プログラミング(Python、Perl、C、Go、JavaScript)、数学、読書…
開発環境
"初めてのC# 第2版"の第13章(インターフェース))の13.10(練習問題)1-3を解いてみる。
練習 13-1
using System; interface IConvertible { string ConvertToCSharp(string s); string ConvertToVB2005(string s); }
練習 13-2
using System; interface IConvertible { string ConvertToCSharp(string s); string ConvertToVB2005(string s); } public class ProgramHelper : IConvertible { public string ConvertToCSharp(string s) { return "文字列をC#の文字列に変換"; } public string ConvertToVB2005(string s) { return "文字列をVB2005の文字列に変換"; } } class Tester { void Run() { ProgramHelper helper = new ProgramHelper(); string s = "文字列"; Console.WriteLine(helper.ConvertToCSharp(s)); Console.WriteLine(helper.ConvertToVB2005(s)); } static void Main() { Tester t = new Tester(); t.Run(); } }
出力結果
文字列をC#の文字列に変換 文字列をVB2005の文字列に変換 続行するには何かキーを押してください . . .
練習 13-3
using System; interface IConvertible { string ConvertToCSharp(string s); string ConvertToVB2005(string s); } interface ICodeChecker : IConvertible { bool CodeCheckSyntax(string s, string lang); } public class ProgramHelper : ICodeChecker { #region IConvertible public string ConvertToCSharp(string s) { return "文字列をC#の文字列に変換"; } public string ConvertToVB2005(string s) { return "文字列をVB2005の文字列に変換"; } #endregion // IConvertible #region ICodeChecker public bool CodeCheckSyntax(string s, string lang) { switch(lang) { case "CSharp": Console.WriteLine( "文字列\"{0}\"が{1}のシンタックスかチェック", s,lang); return true; case "VB2005": Console.WriteLine( "文字列\"{0}\"が{1}のシンタックスかチェック", s, lang); return true; default: Console.WriteLine( "文字列\"{0}\"はCSharpとVB2005のシンタックスではない", s); return false; } } #endregion // ICodeChecker } class Tester { void Run() { ProgramHelper helper = new ProgramHelper(); string s = "文字列"; string lang1 = "CSharp"; string lang2 = "VB2005"; string lang3 = "JavaScript"; Console.WriteLine(helper.CodeCheckSyntax(s, lang1)); Console.WriteLine(helper.CodeCheckSyntax(s, lang2)); Console.WriteLine(helper.CodeCheckSyntax(s, lang3)); } static void Main() { Tester t = new Tester(); t.Run(); } }
文字列"文字列"がCSharpのシンタックスかチェック True 文字列"文字列"がVB2005のシンタックスかチェック True 文字列"文字列"はCSharpとVB2005のシンタックスではない False 続行するには何かキーを押してください . . .
0 コメント:
コメントを投稿