马士兵J2SE-第六章-常用类-String类、StringBuffer类、枚举ENUM

 

public class test {
	public static void main(String[] args) {
		String s1="hello";
		String s2="world";
		String s3="hello";
		System.out.println(s1==s3);

		s1=new String("hello");
		s2=new String("hello");
		System.out.println(s1==s2);
		System.out.println(s1.equals(s2));

		char c[]={'s','u','n',' ','j','a','v','a'};
		String s4=new String(c);
		String s5=new String(c,4,4);
		System.out.println(s4);//sun java
		System.out.println(s5);//java
	}
}

输出:

true
false
true
sun java
java

 

String类常用方法

public class test {
	public static void main(String[] args) {
		String s1="sun java",s2="Sun Java";
		System.out.println(s1.charAt(1));
		System.out.println(s1.length());
		System.out.println(s1.indexOf("java"));
		System.out.println(s1.indexOf("Java"));
		System.out.println(s1.equals(s2));
		System.out.println(s1.equalsIgnoreCase(s2));

		String s="我是程序员,我在学java";
		String sr=s.replace('我','你');
		System.out.println(sr);
	}
}

输出:

u
8
4
-1
false
true
你是程序员,你在学java

 

 

public class test {
	public static void main(String[] args) {
		String s="Welcome to Java World!";
		String s1=" sun java ";
		System.out.println(s.startsWith("Welcome"));
		System.out.println(s.endsWith("World!"));
		System.out.println(s.endsWith("World"));

		String sL=s.toLowerCase();
		String sU=s.toUpperCase();
		System.out.println(sL);
		System.out.println(sU);
		String subS = s.substring(11);//从第11位开始
		System.out.println(subS);

		String sp=s1.trim();
		System.out.println(sp);
	}
}

输出:

 

true
true
false
welcome to java world!
WELCOME TO JAVA WORLD!
Java World!
sun java

 

 

public class test {
	public static void main(String[] args) {
		int j=1234567;
		String sNumber=String.valueOf(j);//将基本数据类型转化为字符串
		System.out.println("j是"+sNumber.length()+"位数。");
		String s="Mary,F,1976";
		String[] sPlit=s.split(",");//分隔
		for(int i=0;i<sPlit.length;i++) {
			System.out.println(sPlit[i]);
		}
	}
}

输出:

 j是7位数。
Mary
F
1976

 

//编写一个程序,输出一个字符串中的大写英文字符数,小写英文字母数以及非英文字母数

public class test {
	public static void main(String[] args) {
		String s="hadsjkhkASDJKSDHjkjS*&*&*(&(*?SD";
		int MaxCount=0;
		int MinCount=0;
		int OthCount=0;

		for(int i=0;i<s.length();i++) {
			char t=s.charAt(i);
			if(t>='A'&t<='Z') {
				MaxCount++;
			}
			else if(t>='a'&t<'z') {
				MinCount++;
			}
			else {
				OthCount++;
			}
		}
		System.out.println(MaxCount+" "+MinCount+" "+OthCount);
	}
}

输出:

 

11 11 10

 

另解:

//编写一个程序,输出一个字符串中的大写英文字符数,小写英文字母数以及非英文字母数

public class test {
	public static void main(String[] args) {
		int lCount=0,uCount=0,oCount=0;
		String s="SDJKJSHDkjndjaskjhadskjjadkshkjads&^*&^S*&^DS&S*";
		String sL="abcdefghijklmnopqrstuvwxyz";
		String sU="ABCDEFGHIJKLMNOPQRSTUVWXYZ";

		for(int i=0;i<s.length();i++) {
			char c=s.charAt(i);

			if(sL.indexOf(c) !=-1 ) {//在字符串里已经找到这个字母了,就是小写了
				lCount++;
			}else if(sU.indexOf(c)!=-1) {
				uCount++;
			}
			else {
				oCount++;
			}
		}

		System.out.println(lCount+" "+uCount+" "+oCount);
	}
}

 

 

 

输出:

26 12 10

 

 

 方法三:

//编写一个程序,输出一个字符串中的大写英文字符数,小写英文字母数以及非英文字母数

public class test {
	public static void main(String[] args) {
		int lCount=0,uCount=0,oCount=0;
		String s="SDJKJSHDkjndjaskjhadskjjadkshkjads&^*&^S*&^DS&S*";
		String sL="abcdefghijklmnopqrstuvwxyz";
		String sU="ABCDEFGHIJKLMNOPQRSTUVWXYZ";

		for(int i=0;i<s.length();i++) {
			char c=s.charAt(i);

			if(Character.isLowerCase(c) ) {//在字符串里已经找到这个字母了,就是小写了
				lCount++;
			}else if(Character.isUpperCase(c)) {
				uCount++;
			}
			else {
				oCount++;
			}
		}

		System.out.println(lCount+" "+uCount+" "+oCount);
	}
}

输出:

26 12 10

 

 

public class test {
	public static void main(String[] args) {
		String s="sunjavajavajavasdaadasjajavajavadsdjava";
		String sToFind="java";

		int count=0;
		int index=-1;

		while((index=s.indexOf(sToFind))!=-1) {
			s=s.substring(index+sToFind.length());
			count++;
		}

		System.out.println(count);
	}
}

输出:

6

 

 StringBuffer类举例

public class test {
	public static void main(String[] args) {
		String s="Microsoft";
		char[] a={'a','b','c'};
		StringBuffer sb1=new StringBuffer(s);
		sb1.append('/').append("IBM").append('/').append("Sun");
		System.out.println(sb1);

		StringBuffer sb2=new StringBuffer("数字");
		for(int i=0;i<=9;i++) {
			sb2.append(i);
		}
		System.out.println(sb2);

		sb2.delete(8, sb2.length()).insert(0, a);
		System.out.println(sb2);
		System.out.println(sb2.reverse());
	}
}

输出:

Microsoft/IBM/Sun
数字0123456789
abc数字012345
543210字数cba

 

 

public class test {
	public enum MyColor {red,green,blue};

	public static void main(String[] args) {
		MyColor m=MyColor.green;
		switch(m) {
		case red:
			System.out.println("red");
		    break;
		case green:
			System.out.println("green");
			break;
		default:
			System.out.println("default");
		}
		System.out.println(m);
	}
}

输出:

 green
green

 

 

 

 

 

 

 

时间: 2024-10-25 08:54:52

马士兵J2SE-第六章-常用类-String类、StringBuffer类、枚举ENUM的相关文章

马士兵 J2SE 第11章 GUI编程 GUI初步和布局管理器

/* 范例名称:Frame 应用举例 * 源文件名称:TestFrame.java * 要 点:Frame组件的创建及显示设置 */ import java.awt.*; public class TestFrame { public static void main( String args[]) { Frame f = new Frame("My First Test"); f.setLocation(300, 300); f.setSize( 170,100); f.setBac

马士兵 J2SE 第11章 GUI编程 事件模型ACTIONEVENT TEXTFIELD事件监听 内部类 PAINT adapter和repaint window事件 键盘事件

BUTTON事件监听 package com.zzk.cn; import java.awt.*; import java.awt.event.*; public class TestActionEvent { public static void main(String[] args) { Frame f=new Frame("Test"); Button b=new Button("Press Me!"); Monitor bh=new Monitor(); b

马士兵J2SE-第六章-常用类-基本数据类型包装类、Maths类、File类

基本数据类型包装类 public class test { public static void main(String[] args) { Integer i=new Integer(100); Double d=new Double("123.456"); int j=i.intValue()+d.intValue(); float f=i.floatValue()+d.floatValue(); System.out.println(j); System.out.println(

java的String和StringBuffer类

这里总结一下同时适用于String和StringBuffer的方法,以便对它们相互间的沟通方式有一个印象.这些表格并未把每个单独的方法都包括进去,而是包含了与本次讨论有重要关系的方法.那些已被覆盖的方法用单独一行总结. 首先总结String类的各种方法: 方法 自变量,覆盖 用途 构建器 已被覆盖:默认,String,StringBuffer,char数组,byte数组 创建String对象 length() 无 String中的字符数量 charAt() int Index 位于String内

马士兵J2SE-第三章-面向对象-Object类:toString方法、equals方法、对象转型、抽象类抽象方法、final关键字、接口

toString方法 public class test { public static void main(String[] args) { Teacher t=new Teacher(); System.out.println("1 "+t+" 2 "+t.toString()); } } class Teacher { public String toString() { return "I am a teacher"; } } 输出: 1

马士兵J2SE-第三章-面向对象-基础及重载

面向对象: //面向对象的方法写一段程序,要求能够手动修改年月日的信息 class Date { private int day; private int month; private int year; public Date (int d, int m, int y) { day = d; month = m; year = y; } public void setDay(int d) { day=d; } public void setMonth(int m) { month = m; }

第六章 Python类(面向对象编程)

什么是面向对象编程?    面向对象编程(Object Oriented Programming,OOP,面向对象程序设计)是一种计算机编程架构.Python就是这种编程语言.    面向对象程序设计中的概念主要包括:对象.类.继承.动态绑定.封装.多态性.消息传递.方法.    1)对象:类的实体,比如一个人.    2)类:一个共享相同结构和行为的对象的集合.通俗的讲就是分类,比如人是一类,动物是一类.    3)继承:类之间的关系,比如猫狗是一类,他们都有四条腿,狗继承了这个四条腿,拥有了

马士兵J2SE-第三章-面向对象-static、继承、重写、构造函数

  static关键字 静态成员变量    public class Cat{ private static int sid=0; private String name; int id; Cat(String name){ this.name=name; id=sid++; } public void info(){ System.out.println("My name is "+name+" No."+id); } public static void mai

Android群英传笔记——第六章:Android绘图机制与处理技巧

Android群英传笔记--第六章:Android绘图机制与处理技巧 一直在情调,时间都是可以自己调节的,不然世界上哪有这么多牛X的人 今天就开始读第六章了,算日子也刚好一个月了,一个月就读一半,这效率也确实有点低了,自己还要加把劲,争取四月底全部看完,第六章讲的是Android的绘图机制,应该算是比较核心的东西了,不管什么功能,最终都是以图形的方式呈现给用户的,因此,掌握Android的绘图技巧,可以在让你设计应用的时候更加的随心所欲,对Android的理解更高 基本的绘图方法,相信读者都已经