Java与C#的substring差异及编程常见错误解析

需积分: 49 3 下载量 2 浏览量 更新于2024-08-16 收藏 870KB PPT 举报
"Java和C#的substring方法详解及编程相关知识点" 在Java和C#中,`substring` 方法是用来截取字符串的一部分。在Java中,`substring` 的语法如下: ```java String a="123"; String b=a.substring(1, 2); // 从索引1开始,到索引2(不包括2)结束 System.out.println(b); // 输出 "2" ``` 这里,`substring` 方法的第一个参数表示起始位置,第二个参数表示结束位置(不包含)。注意,Java中的字符串索引是从0开始的,所以`substring(1, 2)` 实际上是截取了从索引1到索引1的字符,即第二个字符"2"。 而在C#中,`Substring` 的语法稍有不同: ```csharp string a="123"; string b = a.Substring(1, 2); // 从索引1开始,截取2个字符 Console.WriteLine(b); // 输出 "23" ``` 在C#中,`Substring` 的第二个参数表示要截取的字符数量,而不是结束位置。所以`Substring(1, 2)` 截取了从索引1开始的两个字符,即"23"。 此外,资源中还提到了一些其他Java编程知识点: 1. **电子邮件协议**:SMTP(Simple Mail Transfer Protocol)用于发送邮件,而POP3(Post Office Protocol version 3)用于接收邮件。 2. **网络连接检查**:可以使用`ping` 命令检查与远程计算机的连接。 3. **数组操作**:`int[] num = new int[]{2, 1, 3}` 创建一个整数数组;`Arrays.sort(num)` 对数组进行排序;`Arrays.binarySearch()` 用于二分查找,返回元素在排序数组中的位置,若不存在则返回负数,如 `-index - 1`。 4. **程序开发流程**:包括编写代码、程序测试和程序调试。测试是为了发现错误,调试则是为了定位和修复错误,通常会利用断点、单步执行等工具。 5. **条件判断**:`if` 语句中,`if(fa == true)` 应该改为 `if(fa)`,因为`fa`是布尔值,直接比较其自身即可。 6. **数组越界**:访问超出数组边界会导致运行时错误,如 `for` 循环中 `i < 10` 且试图访问 `s[i]`,当 `i` 超出数组长度时会出错。 7. **循环控制**:`continue` 语句跳过当前循环体的剩余部分,直接进入下一次循环;`break` 语句则跳出整个循环。 在编程实践中,理解和掌握这些基本概念和技巧至关重要,它们能帮助开发者编写更高效、更稳定的代码。对于初学者来说,避免常见的错误如条件判断的误用和数组越界,以及熟练运用各种控制流语句,将大大提升编程能力。