String相关知识
2017-10-11 22:26
316 查看
package com.it.day07.Demo08; /* * String概述 * 字符串是由多个'字符'组成的一串数据 * 字符串也可以看成是字符数组 * String 类代表字符串。java程序中所有的字符串(如:"abc")都作为此类的实例实现;凡是用双引号引起来的字符常量,都是String类对象。 * * 创建String字符串的常用的3+1种方式 * a. public String(String original); 把字符封装成字符串对象 * b. public String(char[] value); 把字符数组的数据封装成字符串对象 * c. public String(char[] value,int offset,int count);把字符数组中的一部分数据封装成字符串对象 * * 注意事项: * 1.String类位于java.lang包下的,所以不需要导包 * 2.String字符串底层实现原理就是一个char[]字符数组 * 3.字符串的内容永远不会发生改变【重要重要重要】 * * 字符串当中常用的与判断相关的方法 * public boolean equals(Object obj); 比较字符串的内容是否相同 【java.lang.Object是什么样的参数都可以接收】 * public boolean equalsIgnoreCase(String str); 同上,比较忽略大小写 * public boolean startsWitch(String str); 判断字符串是否是以str开头 * public boolean endsWitch(String str); 判断字符串是否最后的字符str结尾 * * 字符串有一些获取相关的方法 * public int length(); 获取字符串长度,就是个数 * public char charAt(int index);获取指定索引处的字符 * public int indexOf(String str);获取str在字符串对象中第一次出现的索引,没有则返回 -1 * public String substring(int star);从star开始截取字符串到结尾 * public String substring(int start,int end);从开始到结束截取 不包含end * * String 中转换相关方法 * char[] toCharArray(); 把字符串转换成数组 * String toLowerCase(); 转小写 * String toUpperCase(); 转大写 */ public class Demo08ScannerApi { public static void main(String[] args) { String str1 = new String("Hello"); System.out.println(str1); //Hello char[] charArray = {'W','o','r','l','d'}; System.out.println(charArray);//World /* * 把字符数组中的一部分数据封装成字符串 * 参数value代表字符数组 * 参数offset代表数组当中的开始索引位置 * 参数count代表取用多少字符 */ String str2 = new String(charArray,2,3); System.out.println(str2);//rld String str3 = "Hello"; String str4 = "Hello"; String str5 = "hello"; System.out.println(str3.equals(str4));//true System.out.println(str4.equals(str5));//false System.out.println(str3.equalsIgnoreCase(str5));//true 忽略大小写 System.out.println("Hello".startsWith("He"));//true System.out.println("World".endsWith("ord"));//true System.out.println("Hello".startsWith("H", 0));//true String sub = "holedjs"; System.out.println(sub.substring(0,4)); } }
小练习:
package com.it.day07.Demo08;
import java.util.Scanner;
/*
* 1.程序中使用一个长度为3的对象数组,存储用户的登录名和密码
* 注册时,要判断数组是否已满,是:则禁止注册。
* 2.用户选择1,调用:registe()方法,执行注册流程;
* 用户选择2,调用:login()方法,执行登陆流程;
*/
public class Demo08WorkMain03 {
public static void main(String[] args) {
int count = 0;
UserInfo[] userArray = new UserInfo[3];
sysInput(userArray,count);//选择是注册 登录 还是 退出
}
public static void sysInput(UserInfo[] userArray,int count){
System.out.println("您要注册还是登录呢? 1是注册,2是登录,3是退出");
Scanner rc = new Scanner(System.in);
int numner = rc.nextInt();
switch(numner){
case 1:
registe(userArray,count);
break;
case 2:
login(userArray,count);
break;
case 3:
out();
break;
default:
System.out.println("数据错误!");
break; // 最后一个break可以省略,但是不推荐省略!
}
}
/*
* 注册
*/
public static void registe(UserInfo[] array,int count){
UserInfo user;
Scanner sca = new Scanner(System.in);
if(count < array.length){
for (int i = 0; i < array.length; i++) {
user = new UserInfo();
System.out.println("请输入用户名:");
user.setName(sca.next());
System.out.println("请输入密码:");
user.setPassword(sca.next());
System.out.println("请输入出生日期:");
user.setBy(sca.next());
System.out.println("请输入爱好:");
user.setAihao(sca.next());
user = new UserInfo(user.getName(),user.getPassword(),user.getBy(),user.getAihao());
array[i] = user;
System.out.println(array[i].getName());
System.out.println("恭喜您注册成功");
count++;
System.out.println("count = " + count);
sysInput(array,count);
break;
}
}else{
System.out.println("抱歉内存已满");
}
}
/*
* 登录
*/
public static void login(UserInfo[] userArray,int count){
System.out.println("---" + userArray[0].getName());
Scanner scanner = new Scanner(System.in);
System.out.println("请输入用户名:");
String name = scanner.next();
System.out.println("请输入密码:");
String passworld = scanner.next();
for (int i = 0; i < userArray.length; i++) {
if("" != userArray[i].getName() && "" != userArray[i].getPassword()
&& "" != userArray[i].getAihao() && "" != userArray[i].getBy() && "" != userArray[i].getAihao()){
if(name.equals(userArray[i].getName()) && passworld.equals(userArray[i].getPassword())){
System.out.println("恭喜你登录成功!!");
break;
}else{
System.out.println("抱歉! 您输入的用户名或者密码不正确!!请重新输入.");
sysInput(userArray,count);
break;
}
}
}
}
}
相关文章推荐
- NSString使用stringWithFormat拼接的相关知识
- NSString使用stringWithFormat拼接的相关知识
- String 类相关知识
- CString string char等字符类型的相关知识和转换
- 值类型与引用类型(特殊的string) Typeof和GetType() 静态和非静态使用 参数传递 相关知识
- CString string char等字符类型的相关知识和转换
- string及vector核心相关知识
- 知识储备:02数组与字符串:String相关问题
- 关于public static void main(String[] args)相关知识
- String相关的知识
- String相关知识
- 如约而至的string、stringbuffer和stringbuilder知识相关
- String对象的相关知识(转载)
- 【Java String】Java 中的String类相关知识再认识
- String 相关知识(后续会更新)
- String、StringBuffer与StringBuilder相关知识介绍
- Java String相关知识
- 直播相关知识收集
- AIX系统日志相关知识
- 【JavaWeb-25】事务管理相关知识、手动/半自动/自动管理事务案例、整合Junit、整合Web、spring和hibernate整合、struts2和spring整合