认识字符串
public static void main(String[] args) {
//使用直接赋值的方式获取一个字符串对象
System.out.println(123 + "菠萝吹雪");
System.out.println("abc" + true);
System.out.println("菠萝吹雪" + 666);
String a1 = 123 + "菠萝吹雪";
System.out.println(a1);
//使用直接赋值的方式获取一个字符串对象
//空参构造 : 可以获取一个空白的字符串对象
String a2 = new String();
System.out.println("@" + a2 +"!");
//传递一个字符数组 根据字符数组的内容再去创建一个新的字符串对象
//我们需要修改字符串的内容
char [] all = {'a','b','c','d'};
String a3 = new String(all);
System.out.println(a3);
//传递一个字节数,根据字节数的内容在创建一个新的字符串对象
//字节信息的转换,需要用到在这个构造
byte[] a4 = {97,98,99,100};
String a5 = new String(a4);
System.out.println(a5);
}
字符串的比较
public static void main(String[] args) {
//基本数据类型
//基本数据类型比较的是数据值
int a = 10;
int b = 20;
System.out.println(a == b); //false
//引用数据类型
//引用数据类型比较的是地址值
String a1 = new String("abc");
String a2 = new String("abc");
System.out.println(a1 == a2); //false
//串池相同 地址值相同
String b1 = "abc";
String b2 = "abc";
System.out.println(b1 == b2); //true
String a3 = new String("abc");
String b3 = "abc";
System.out.println(a3 == b3); //ture
//进行字符串的值的比较
//boolean equals 完全一样才为 true 否则为 false
//boolean equalsIgnoreCase 忽略大小写的比较
String a4 = new String("abc");
String b4 = "abc";
boolean mun1 = a4.equals(b4);
System.out.println(mun1);
String a5 = new String("abc");
String b5 = "Abc";
boolean mun2 = a5.equalsIgnoreCase(b5);
System.out.println(mun2);
}
字符串的反转
public class 字符串的反转 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入您想反转的字符串:");
String a1 = sc.nextLine();
fanzhuan(a1);
System.out.println("----------------------");
fanzhuan1(a1);
}
//方法一
public static void fanzhuan(String mun) {
for (int i = 0; i < mun.length(); i++) {
char k = mun.charAt(mun.length()-(i+1));
System.out.println(k);
}
}
//方法二
public static void fanzhuan1(String mun) {
for (int i = mun.length()-1; i >=0; i--) {
char k = mun.charAt(i);
System.out.println(k);
}
}
}
字符串的遍历
import java.util.Scanner;
public class 字符串的遍历 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入您想输入的字符串:");
String mun = sc.next();
for (int i = 0; i < mun.length(); i++) {
char a1 = mun.charAt(i);
System.out.println(a1);
}
}
}
拼接字符串
public class 拼接字符串 {
public static void main(String[] args) {
int [] mun = {1,2,3,4,5,6,7,8,9,0};
pinjie(mun);
}
public static void pinjie(int [] mun) {
System.out.print("[");
for (int i = 0; i < mun.length; i++) {
if(i==mun.length-1){
System.out.print(mun[i]);
}else{
System.out.print(mun[i]+",");
}
}
System.out.println("]");
}
}
统计字符次数
import java.util.Scanner;
public class 统计字符次数 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入您想输入的字符串:");
String mun = sc.next();
int c1=0,c2=0,c3=0;
for (int i = 0; i < mun.length(); i++) {
char k = mun.charAt(i);
if(k>='a' && k<='z'){
c3 +=1;
}
if(k>='A'&&k<='Z'){
c2 +=1;
}
if(k>='0'&& k<='9'){
c1 +=1;
}
}
System.out.println("您输入的字符串中大写字母字符"+c2+"个," + "小写字母字符"+c3+"个," + "数字字符"+c1+"个");
}
}
身份证信息查看
public class 身份证信息查看 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入您的身份证信息:");
String shenfenzheng = sc.nextLine();
//年份
String mun = shenfenzheng.substring(6,10);
//月份
String mun1 = shenfenzheng.substring(10,12);
//日期
String mun2 = shenfenzheng.substring(12,14);
//性别
char a1 = shenfenzheng.charAt(16);
int mun3 = a1 - 48;
String mun4 = "";
if(mun3%2 == 0){
mun4 += "女";
}else if(mun3%2==1){
mun4 += "男";
}
//打印
System.out.println("人物信息为:");
System.out.println("出生年月日:"+mun+"年"+mun1+"月"+mun2+"日");
System.out.println("性别为:"+mun4);
}
}
金额转换(数字与汉字之间)
import java.util.Scanner;
public class 金额转换升级版 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入您的收据金额:");
int k = sc.nextInt();
String name = "";
while(true){
int ge = k%10;
name = fanyi(ge) + name;
k = k/10;
if(k==0){
break;
}
}
if(name.length()<=7 && k>=0){
String [] mun1 = {"佰","拾","万","仟","佰","拾","元"};
String [] num = new String[7];
String [] num1 = new String[7];
String [] q1 = new String[name.length()];
for (int i = 0; i < name.length(); i++) {
char al = name.charAt(i);
num[i] = String.valueOf(al);
}
for (int i = 0; i < num.length; i++) {
if(num[i]==null){
}else{
q1[i] = num[i];
}
}
int c = 0;
for (int i = q1.length-1; i >= 0; i--) {
num1[7-(c+1)] = q1[i];
c +=1;
}
for (int i = 0; i < num1.length; i++) {
if(num1[i] == null){
num1[i] = "零";
}
}
for (int i = 0; i < num1.length; i++) {
System.out.print(num1[i]+mun1[i]);
}
}else{
System.out.println("超出金额范围!");
}
}
public static String fanyi ( int k){
String[] mun = {"零", "壹", "贰", "叁", "肆", "伍", "陆", "柒", "捌", "玖"};
return mun[k];
}
}
手机信号屏蔽
public class 手机号屏蔽2_substring {
public static void main(String[] args) {
String mun = "17389290933";
//截取前三位
String mun1 = mun.substring(0,3);
//截取后四位
String mun2 = mun.substring(7);
//拼接
String mun3 = mun1 + "****" + mun2;
System.out.println(mun3);
}
}
字符串的反转
import java.util.Scanner;
public class 字符串的反转 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入您想反转的字符串:");
String a1 = sc.nextLine();
fanzhuan(a1);
System.out.println("----------------------");
fanzhuan1(a1);
}
//方法一
public static void fanzhuan(String mun) {
for (int i = 0; i < mun.length(); i++) {
char k = mun.charAt(mun.length()-(i+1));
System.out.println(k);
}
}
//方法二
public static void fanzhuan1(String mun) {
for (int i = mun.length()-1; i >=0; i--) {
char k = mun.charAt(i);
System.out.println(k);
}
}
}