首页 > 解决方案 > C# 控制台.WriteLine()

问题描述

因此,我编写了这段代码来运行 json 文件中的字符串值并确定它是否是回文。我无法在控制台中正确显示结果。我的 Console.WriteLine 是问题(我认为)。它显示真/假答案,但我需要实际的字符串与它一起出现。例如:“妈妈:真”。意思是回文。有什么提示吗?

using System;
using System.Collections.Generic;
using System.Net;
using Newtonsoft.Json;
using System.Linq;

public class Program
    {
    public static void Main(string[] args)
    {
     //receive json from url
        WebClient webClient = new WebClient();
        WebClient n = new WebClient();
        var json = n.DownloadString("https://raw.githubusercontent.com/bungard/PalindromeTest/master/string.json");
        string valueOriginal = Convert.ToString(json);

        //parse
        Root palindromes = JsonConvert.DeserializeObject<Root>(json);
        foreach (Palindromes pals in palindromes.Strings)
        {

          Console.WriteLine(pals.result = IsPalindrome(pals.str).ToString());**
        }


    }
    public class Root
    {
        public List<Palindromes> Strings { get; set; }
    }

    public class Palindromes
    {
        public string str { get; set; }
        public string result { get; set; }
    }



    public static bool IsPalindrome(string value)
    {
        char[] forwards = (from c in value.ToLower().ToCharArray() where char.IsLetter(c) select c).ToArray();
        int middle = (forwards.Length / 2) + 1;
        for (int i = 0; i < middle; i++)
            if (forwards[i] != forwards[forwards.Length - 1 - i])
                return false;
        return true;
    }
}

标签: c#palindromeconsole.writeline

解决方案


你应该没问题:

pals.result = IsPalindrome(pals.str).ToString();
Console.WriteLine($"{pals.str}: {pals.result}");

推荐阅读