JavaProgram StructureC# | |
package hello; public class HelloWorld { public static void main(String[] args) { String name = "Java"; // See if an argument was passed from the command line if (args.length == 1) name = args[0]; System.out.println("Hello, " + name + "!"); } } |
using System; namespace Hello { public class HelloWorld { public static void Main(string[] args) { string name = "C#"; // See if an argument was passed from the command line if (args.Length == 1) name = args[0]; Console.WriteLine("Hello, " + name + "!"); } } } |
JavaCommentsC# | |
// Single line /* Multiple line */ /** Javadoc documentation comments */ |
// Single line /* Multiple line */ /// XML comments on a single line /** XML comments on multiple lines */ |
JavaData TypesC# | |
Primitive Types boolean byte char short, int, long float, double Reference Types Object (superclass of all other classes) String arrays, classes, interfaces Conversions // int to String int x = 123; String y = Integer.toString(x); // y is "123" // String to int y = "456"; x = Integer.parseInt(y); // x is 456 // double to int double z = 3.5; x = (int) z; // x is 3 (truncates decimal) |
Value Types bool byte, sbyte char short, ushort, int, uint, long, ulong float, double, decimal structures, enumerations Reference Types object (superclass of all other classes) string arrays, classes, interfaces, delegates Convertions // int to string int x = 123; String y = x.ToString(); // y is "123" // string to int y = "456"; x = int.Parse(y); // or x = Convert.ToInt32(y); // double to int double z = 3.5; x = (int) z; // x is 3 (truncates decimal) |
JavaConstantsC# | |
// May be initialized in a constructor final double PI = 3.14; |
const double PI = 3.14; // Can be set to a const or a variable. May be initialized in a constructor. readonly int MAX_HEIGHT = 9; |
JavaEnumerationsC# | |
enum Action {Start, Stop, Rewind, Forward}; // Special type of class enum Status { Flunk(50), Pass(70), Excel(90); private final int value; Status(int value) { this.value = value; } public int value() { return value; } }; Action a = Action.Stop; if (a != Action.Start) System.out.println(a); // Prints "Stop" Status s = Status.Pass; System.out.println(s.value()); // Prints "70" |
enum Action {Start, Stop, Rewind, Forward}; enum Status {Flunk = 50, Pass = 70, Excel = 90}; No equivalent. Action a = Action.Stop; if (a != Action.Start) Console.WriteLine(a); // Prints "Stop" Status s = Status.Pass; Console.WriteLine((int) s); // Prints "70" |
JavaOperatorsC# | |
Comparison == < > <= >= != Arithmetic + - * / % (mod) / (integer pision if both operands are ints) Math.Pow(x, y) Assignment = += -= *= /= %= &= |= ^= <<= >>= >>>= ++ -- Bitwise & | ^ ~ << >> >>> Logical && || & | ^ ! Note: && and || perform short-circuit logical evaluations String Concatenation + |
Comparison == < > <= >= != Arithmetic + - * / % (mod) / (integer pision if both operands are ints) Math.Pow(x, y) Assignment = += -= *= /= %= &= |= ^= <<= >>= ++ -- Bitwise & | ^ ~ << >> Logical && || & | ^ ! Note: && and || perform short-circuit logical evaluations String Concatenation + |
JavaChoicesC# | |
greeting = age < 20 ? "What's up?" : "Hello"; if (x < y) System.out.println("greater"); if (x != 100) { x *= 5; y *= 2; } else z *= 6; int selection = 2; switch (selection) { // Must be byte, short, int, char, or enum case 1: x++; // Falls through to next case if no break case 2: y++; break; case 3: z++; break; default: other++; } |
greeting = age < 20 ? "What's up?" : "Hello"; if (x < y) Console.WriteLine("greater"); if (x != 100) { x *= 5; y *= 2; } else z *= 6; string color = "red"; switch (color) { // Can be any predefined type case "red": r++; break; // break is mandatory; no fall-through case "blue": b++; break; case "green": g++; break; default: other++; break; // break necessary on default } |
JavaLoopsC# | |
while (i < 10) i++; for (i = 2; i <= 10; i += 2) System.out.println(i); do i++; while (i < 10); for (int i : numArray) // foreach construct sum += i; // for loop can be used to iterate through any Collection import java.util.ArrayList; ArrayList<Object> list = new ArrayList<Object>(); list.add(10); // boxing converts to instance of Integer list.add("Bisons"); list.add(2.3); // boxing converts to instance of Double for (Object o : list) System.out.println(o); |
while (i < 10) i++; for (i = 2; i <= 10; i += 2) Console.WriteLine(i); do i++; while (i < 10); foreach (int i in numArray) sum += i; // foreach can be used to iterate through any collection using System.Collections; ArrayList list = new ArrayList(); list.Add(10); list.Add("Bisons"); list.Add(2.3); foreach (Object o in list) Console.WriteLine(o); |
JavaArraysC# | |
int nums[] = {1, 2, 3}; or int[] nums = {1, 2, 3}; for (int i = 0; i < nums.length; i++) System.out.println(nums[i]); String names[] = new String[5]; names[0] = "David"; float twoD[][] = new float[rows][cols]; twoD[2][0] = 4.5; int[][] jagged = new int[5][]; jagged[0] = new int[5]; jagged[1] = new int[2]; jagged[2] = new int[3]; jagged[0][4] = 5; |
int[] nums = {1, 2, 3}; for (int i = 0; i < nums.Length; i++) Console.WriteLine(nums[i]); string[] names = new string[5]; names[0] = "David"; float[,] twoD = new float[rows, cols]; twoD[2,0] = 4.5f; int[][] jagged = new int[3][] { new int[5], new int[2], new int[3] }; jagged[0][4] = 5; |
JavaFunctionsC# | |
// Return single value
int Add(int x, int y) {
return x + y;
}
int sum = Add(2, 3);// Return no value
void PrintSum(int x, int y) {
System.out.println(x + y);
}
PrintSum(2, 3);// Primitive types and references are always passed by value void TestFunc(int x, Point p) { x++; p.x++; // Modifying property of the object p = null; // Remove local reference to object } class Point { public int x, y; } Point p = new Point(); p.x = 2; int a = 1; TestFunc(a, p); System.out.println(a + " " + p.x + " " + (p == null) ); // 1 3 false // Accept variable number of arguments int Sum(int ... nums) { int sum = 0; for (int i : nums) sum += i; return sum; } int total = Sum(4, 3, 2, 1); // returns 10 |
// Return single value
int Add(int x, int y) {
return x + y;
}
int sum = Add(2, 3);// Return no value
void PrintSum(int x, int y) {
Console.WriteLine(x + y);
}
PrintSum(2, 3);// Pass by value (default), in/out-reference (ref), and out-reference (out) void TestFunc(int x, ref int y, out int z, Point p1, ref Point p2) { x++; y++; z = 5; p1.x++; // Modifying property of the object p1 = null; // Remove local reference to object p2 = null; // Free the object } class Point { public int x, y; } Point p1 = new Point(); Point p2 = new Point(); p1.x = 2; int a = 1, b = 1, c; // Output param doesn't need initializing TestFunc(a, ref b, out c, p1, refp2); Console.WriteLine("{0} {1} {2} {3} {4}", a, b, c, p1.x, p2 == null); // 1 2 5 3 True // Accept variable number of arguments int Sum(params int[] nums) { int sum = 0; foreach (int i in nums) sum += i; return sum; } int total = Sum(4, 3, 2, 1); // returns 10 |
JavaStringsC# | |
// String concatenation String school = "Harding "; school = school + "University"; // school is "Harding University" // String comparison String mascot = "Bisons"; if (mascot == "Bisons") // Not the correct way to do string comparisons if (mascot.equals("Bisons")) // true if (mascot.equalsIgnoreCase("BISONS")) // true if (mascot.compareTo("Bisons") == 0) // true System.out.println(mascot.substring(2, 5)); // Prints "son" // My birthday: Oct 12, 1973 java.util.Calendar c = new java.util.GregorianCalendar(1973, 10, 12); String s = String.format("My birthday: %1$tb %1$te, %1$tY", c); // Mutable string StringBuffer buffer = new StringBuffer("two "); buffer.append("three "); buffer.insert(0, "one "); buffer.replace(4, 7, "TWO"); System.out.println(buffer); // Prints "one TWO three" |
// String concatenation string school = "Harding "; school = school + "University"; // school is "Harding University" // String comparison string mascot = "Bisons"; if (mascot == "Bisons") // true if (mascot.Equals("Bisons")) // true if (mascot.ToUpper().Equals("BISONS")) // true if (mascot.CompareTo("Bisons") == 0) // true Console.WriteLine(mascot.Substring(2, 3)); // Prints "son" // My birthday: Oct 12, 1973 DateTime dt = new DateTime(1973, 10, 12); string s = "My birthday: " + dt.ToString("MMM dd, yyyy"); // Mutable string System.Text.StringBuilder buffer = new System.Text.StringBuilder("two "); buffer.Append("three "); buffer.Insert(0, "one "); buffer.Replace("two", "TWO"); Console.WriteLine(buffer); // Prints "one TWO three" |
JavaException HandlingC# | |
// Must be in a method that is declared to throw this exception Exception ex = new Exception("Something is really wrong."); throw ex; try { y = 0; x = 10 / y; } catch (Exception ex) { System.out.println(ex.getMessage()); } finally { // Code that always gets executed } |
Exception up = new Exception("Something is really wrong."); throw up; // ha ha try { y = 0; x = 10 / y; } catch (Exception ex) { // Variable "ex" is optional Console.WriteLine(ex.Message); } finally { // Code that always gets executed } |
JavaNamespacesC# | |
package harding.compsci.graphics; // Import single class import harding.compsci.graphics.Rectangle; // Import all classes import harding.compsci.graphics.*; |
namespace Harding.Compsci.Graphics { ... } or namespace Harding { namespace Compsci { namespace Graphics { ... } } } // Import single class using Rectangle = Harding.CompSci.Graphics.Rectangle; // Import all class using Harding.Compsci.Graphics; |
JavaClasses / InterfacesC# | |
Accessibility keywords public private protected static // Inheritance class FootballGame extends Competition { ... } // Interface definition interface IAlarmClock { ... } // Extending an interface interface IAlarmClock extends IClock { ... } // Interface implementation class WristWatch implements IAlarmClock, ITimer { ... } |
Accessibility keywords public private internal protected protected internal static // Inheritance class FootballGame : Competition { ... } // Interface definition interface IAlarmClock { ... } // Extending an interface interface IAlarmClock : IClock { ... } // Interface implementation class WristWatch : IAlarmClock, ITimer { ... } |
JavaConstructors / DestructorsC# | |
class SuperHero { private int mPowerLevel; public SuperHero() { mPowerLevel = 0; } public SuperHero(int powerLevel) { this.mPowerLevel= powerLevel; } // No destructors, just override the finalize method protected void finalize() throws Throwable { super.finalize(); // Always call parent's finalizer } } |
class SuperHero { private int mPowerLevel; public SuperHero() { mPowerLevel = 0; } public SuperHero(int powerLevel) { this.mPowerLevel= powerLevel; } ~SuperHero() { // Destructor code to free unmanaged resources. // Implicitly creates a Finalize method. } } |
JavaObjectsC# | |
SuperHero hero = new SuperHero(); hero.setName("SpamMan"); hero.setPowerLevel(3); hero.Defend("Laura Jones"); SuperHero.Rest(); // Calling static method SuperHero hero2 = hero; // Both refer to same object hero2.setName("WormWoman"); System.out.println(hero.getName()); // Prints WormWoman hero = null; // Free the object if (hero == null) hero = new SuperHero(); Object obj = new SuperHero(); System.out.println("object's type: " + obj.getClass().toString()); if (obj instanceof SuperHero) System.out.println("Is a SuperHero object."); |
SuperHero hero = new SuperHero(); hero.Name = "SpamMan"; hero.PowerLevel = 3; hero.Defend("Laura Jones"); SuperHero.Rest(); // Calling static method SuperHero hero2 = hero; // Both refer to same object hero2.Name = "WormWoman"; Console.WriteLine(hero.Name); // Prints WormWoman hero = null ; // Free the object if (hero == null) hero = new SuperHero(); Object obj = new SuperHero(); Console.WriteLine("object's type: " + obj.GetType().ToString()); if (obj is SuperHero) Console.WriteLine("Is a SuperHero object."); |
JavaPropertiesC# | |
private int mSize; public int getSize() { return mSize; } public void setSize(int value) { if (value < 0) mSize = 0; else mSize = value; } int s = shoe.getSize(); shoe.setSize(s+1); |
private int mSize; public int Size { get { return mSize; } set { if (value < 0) mSize = 0; else mSize = value; } } shoe.Size++; |
JavaStructsC# | |
聽 No structs in Java. |
struct StudentRecord { public string name; public float gpa; public StudentRecord(string name, float gpa) { this.name = name; this.gpa = gpa; } } StudentRecord stu = new StudentRecord("Bob", 3.5f); StudentRecord stu2 = stu; stu2.name = "Sue"; Console.WriteLine(stu.name); // Prints "Bob" Console.WriteLine(stu2.name); // Prints "Sue" |
JavaConsole I/OC# | |
java.io.DataInput in = new java.io.DataInputStream(System.in); System.out.print("What is your name? "); String name = in.readLine(); System.out.print("How old are you? "); int age = Integer.parseInt(in.readLine()); System.out.println(name + " is " + age + " years old."); int c = System.in.read(); // Read single char System.out.println(c); // Prints 65 if user enters "A" // The studio costs $499.00 for 3 months. System.out.printf("The %s costs $%.2f for %d months.%n", "studio", 499.0, 3); // Today is 06/25/04 System.out.printf("Today is %tD\n", new java.util.Date()); |
Console.Write("What's your name? "); string name = Console.ReadLine(); Console.Write("How old are you? "); int age = Convert.ToInt32(Console.ReadLine()); Console.WriteLine("{0} is {1} years old.", name, age); // or Console.WriteLine(name + " is " + age + " years old."); int c = Console.Read(); // Read single char Console.WriteLine(c); // Prints 65 if user enters "A" // The studio costs $499.00 for 3 months. Console.WriteLine("The {0} costs {1:C} for {2} months.\n", "studio", 499.0, 3); // Today is 06/25/2004 Console.WriteLine("Today is " + DateTime.Now.ToShortDateString()); |
JavaFile I/OC# | |
import java.io.*; // Character stream writing FileWriter writer = new FileWriter("c:\\myfile.txt"); writer.write("Out to file.\n"); writer.close(); // Character stream reading FileReader reader = new FileReader("c:\\myfile.txt"); BufferedReader br = new BufferedReader(reader); String line = br.readLine(); while (line != null) { System.out.println(line); line = br.readLine(); } reader.close(); // Binary stream writing FileOutputStream out = new FileOutputStream("c:\\myfile.dat"); out.write("Text data".getBytes()); out.write(123); out.close(); // Binary stream reading FileInputStream in = new FileInputStream("c:\\myfile.dat"); byte buff[] = new byte[9]; in.read(buff, 0, 9); // Read first 9 bytes into buff String s = new String(buff); int num = in.read(); // Next is 123 in.close(); |
using System.IO; // Character stream writing StreamWriter writer = File.CreateText("c:\\myfile.txt"); writer.WriteLine("Out to file."); writer.Close(); // Character stream reading StreamReader reader = File.OpenText("c:\\myfile.txt"); string line = reader.ReadLine(); while (line != null) { Console.WriteLine(line); line = reader.ReadLine(); } reader.Close(); // Binary stream writing BinaryWriter out = new BinaryWriter(File.OpenWrite("c:\\myfile.dat")); out.Write("Text data"); out.Write(123); out.Close(); // Binary stream reading BinaryReader in = new BinaryReader(File.OpenRead("c:\\myfile.dat")); string s = in.ReadString(); int num = in.ReadInt32(); in.Close(); |
以上就是JAVA与C#比较的代码详细介绍的内容,更多相关内容请关注PHP中文网(www.php.cn)!

C#和.NET运行时紧密合作,赋予开发者高效、强大且跨平台的开发能力。1)C#是一种类型安全且面向对象的编程语言,旨在与.NET框架无缝集成。2).NET运行时管理C#代码的执行,提供垃圾回收、类型安全等服务,确保高效和跨平台运行。

要开始C#.NET开发,你需要:1.了解C#的基础知识和.NET框架的核心概念;2.掌握变量、数据类型、控制结构、函数和类的基本概念;3.学习C#的高级特性,如LINQ和异步编程;4.熟悉常见错误的调试技巧和性能优化方法。通过这些步骤,你可以逐步深入C#.NET的世界,并编写高效的应用程序。

C#和.NET的关系是密不可分的,但它们不是一回事。C#是一门编程语言,而.NET是一个开发平台。C#用于编写代码,编译成.NET的中间语言(IL),由.NET运行时(CLR)执行。

C#.NET依然重要,因为它提供了强大的工具和库,支持多种应用开发。1)C#结合.NET框架,使开发高效便捷。2)C#的类型安全和垃圾回收机制增强了其优势。3).NET提供跨平台运行环境和丰富的API,提升了开发灵活性。

C#.NETisversatileforbothwebanddesktopdevelopment.1)Forweb,useASP.NETfordynamicapplications.2)Fordesktop,employWindowsFormsorWPFforrichinterfaces.3)UseXamarinforcross-platformdevelopment,enablingcodesharingacrossWindows,macOS,Linux,andmobiledevices.

C#和.NET通过不断的更新和优化,适应了新兴技术的需求。1)C#9.0和.NET5引入了记录类型和性能优化。2).NETCore增强了云原生和容器化支持。3)ASP.NETCore与现代Web技术集成。4)ML.NET支持机器学习和人工智能。5)异步编程和最佳实践提升了性能。

c#.netissutableforenterprise-levelapplications withemofrosoftecosystemdueToItsStrongTyping,richlibraries,androbustperraries,androbustperformance.however,itmaynotbeidealfoross-platement forment forment forment forvepentment offependment dovelopment toveloperment toveloperment whenrawspeedsportor whenrawspeedseedpolitical politionalitable,

C#在.NET中的编程过程包括以下步骤:1)编写C#代码,2)编译为中间语言(IL),3)由.NET运行时(CLR)执行。C#在.NET中的优势在于其现代化语法、强大的类型系统和与.NET框架的紧密集成,适用于从桌面应用到Web服务的各种开发场景。


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SecLists
SecLists是最终安全测试人员的伙伴。它是一个包含各种类型列表的集合,这些列表在安全评估过程中经常使用,都在一个地方。SecLists通过方便地提供安全测试人员可能需要的所有列表,帮助提高安全测试的效率和生产力。列表类型包括用户名、密码、URL、模糊测试有效载荷、敏感数据模式、Web shell等等。测试人员只需将此存储库拉到新的测试机上,他就可以访问到所需的每种类型的列表。

PhpStorm Mac 版本
最新(2018.2.1 )专业的PHP集成开发工具

Atom编辑器mac版下载
最流行的的开源编辑器

ZendStudio 13.5.1 Mac
功能强大的PHP集成开发环境