原来String类型这么强大,之前只是觉得它是定义一个字符串用的。接下来就是通过做作业去学习String类型的一天了。
文末有JDK API 1.6中文版帮助文档,新手必备,免费获取!哥哥我可是找了好久。
1.用代码演示String类中的以下方法的用法
(1)boolean isEmpty(): 判断字符串是不是空串,如果是空的就返回true
(2)char charAt(int index): 返回索引上的字符
(3)String toLowerCase(): 字符串转成小写
(4)String toUpperCase(): 字符串转成大写
(5)String repalce(char oldChar, char newChar): 将字符串中的老字符,替换为新字符
(6)String repalce(String old, String newstr): 将字符串中的老字符串,替换为新字符串
(7)String trim(): 去掉字符串两端空格
我就一个一个测试了,把所有的功能全写在了一个类中。注意点都写在了代码注释中,这个还是很简单的。
package cn.demo01;
/*
* 解释一下以下注释()后面是什么意思。例如(1)boolean isEmpty(): 判断字符串是不是空串,如果是空的就返回true
* 全是String类型的方法介绍 返回值 方法名 方法功能描述
* 这种解释格式是Java API的中文帮助文档,这个文档我的博客中有,免费获取!
*/
public class stringDemo {
public static void main(String[] args) {
function_1();
function_2();
function_3();
function_4();
function_5();
function_6();
function_7();
}
/*
* (7)String trim(): 去掉字符串两端空格
*/
public static void function_7(){
String s = new String(" acvsjavadfasf ");
System.out.println("(7)例"+s);
String s1 = s.trim();
System.out.println(""+s1);
}
/*
* (6)String repalce(String old, String newstr): 将字符串中的老字符串,替换为新字符串
*/
public static void function_6(){
String s = new String("acvsjavadfasf");
String s1 = s.replace("java","AAAaaa");
System.out.println("(6)"+s1);
}
/*
* (5)String repalce(char oldChar, char newChar): 将字符串中的老字符,替换为新字符
*/
public static void function_5(){
String s = new String("acvsjavadfasf");
String s1 = s.replace('j', '6'); //只能替换一个字符,记得加‘’
System.out.println("(5)"+s1);
}
/*
* (4)String toUpperCase(): 字符串转成大写
*/
public static void function_4(){
String s = new String("acvsdfasf");
String s1 = s.toUpperCase();
System.out.println("(4)"+s1);
}
/*
* (3)String toLowerCase(): 字符串转成小写
*/
public static void function_3(){
String s = new String("ABCDEFG");
String s1 = s.toLowerCase();
System.out.println("(3)"+s1);
}
/*
* (2)char charAt(int index): 返回索引上的字符
*/
public static void function_2(){
String s = new String("abcdef");
char c = s.charAt(3);
System.out.println("(2)"+c);
}
/*
* (1)boolean isEmpty(): 判断字符串是不是空串,如果是空的就返回true
*/
public static void function_1(){
String s = new String("123456");
boolean b = s.isEmpty();
System.out.println("(1)"+b);
}
}
2.分析以下需求,并用代码实现:
(1)定义如下方法public static String getPropertyGetMethodName(String property);
(2)该方法的参数为String类型,表示用户给定的成员变量的名字,返回值类型为String类型,返回值为成员变量对应的get方法的名字
(3)如:用户调用此方法时给定的参数为"name",该方法的返回值为"getName"
我没搞懂这个题目的意义在哪。可能是我把题目理解错了
package cn.demo02;
/*
* 分析以下需求,并用代码实现:
(1)定义如下方法public static String getPropertyGetMethodName(String property);
(2)该方法的参数为String类型,表示用户给定的成员变量的名字,返回值类型为String类型,返回值为成员变量对应的get方法的名字
(3)如:用户调用此方法时给定的参数为"name",该方法的返回值为"getName"
*/
public class SetMethod {
public static void main(String[] args) {
System.out.println(getPropertyGetMethodName("张三"));
}
public static String getPropertyGetMethodName(String property){
String name = property;
return name;
}
}
3.分析以下需求,并用代码实现:
(1)定义数字字符串数组{"010","3223","666","7890987","123123"}
(2)判断该数字字符串数组中的数字字符串是否是对称(第一个数字和最后一个数字相等,第二个数字和倒数第二个数字是相等的,依次类推)的,并逐个输出
(3)如:010 是对称的,3223 是对称的,123123 不是对称的
(4)最终打印该数组中对称字符串的个数
提示:循环获取字符串的每一个字符,依次比较第一个和最后一个,第二个和倒数第二个。。。
代码我是咋看咋对,可结果就是少一个。
package cn.demo03;
/*
* (1)定义数字字符串数组{"010","3223","666","7890987","123123"}
(2)判断该数字字符串数组中的数字字符串是否是对称(第一个数字和最后一个数字相等,第二个数字和倒数第二个数字是相等的,依次类推)的,并逐个输出
(3)如:010 是对称的,3223 是对称的,123123 不是对称的
(4)最终打印该数组中对称字符串的个数
提示:循环获取字符串的每一个字符,依次比较第一个和最后一个,第二个和倒数第二个。。。
*/
public class Judge {
public static void main(String[] args) {
function();
}
public static void function(){
String[] st = {"010","3223","666","7890987","123123"};
int count = 0;
int c = 0;//最终打印个数,要用到计数器
for(int i = 0;i < st.length;i++){
String s = st[i];
for(int j = 0;j <s.length()/2;j++){
if(s.charAt(j) != s.charAt((s.length()-1))-j){
count =0;
}else {
count = 1;
}
}
if(count == 1){
System.out.println(st[i]); //打印出每个对称字符串
}
c = c+count;
}
System.out.println("对称字符串个数: "+c);
}
}
JDK API 1.6 中文版:
链接:链接:https://pan.baidu.com/s/1OWVWlHXnzzw9M8E8IfsTkg
提取码:o0oj