Java学习7(字符串、枚举、泛型)

编程入门 行业动态 更新时间:2024-10-12 05:48:45

Java学习7(<a href=https://www.elefans.com/category/jswz/34/1771434.html style=字符串、枚举、泛型)"/>

Java学习7(字符串、枚举、泛型)

一、字符串

1.字符串的创建方式:

String str = "JavaStudy";          或            String str = new String("JavaStudy");

String 创建的字符串存储在公共池中,使用关键字new创建的字符串对象在堆上。

注:String类不可改变,一旦创建值无法改变。

2.字符串长度的获取:

str.length();

3.字符串的连接:

使用“+”操作连接字符串;       str1.concat(srt2);

编程练习:

public class ConnectStr{public static void main(String[] args){int booktime = 4;float pratice = 2.5f;String s1 = new String("Hello");String s2 = new String("world!");String s = s1+""+s2;    //使用+号可以连接字符串String s3 = "We are students.";String s4 = "   java  class    ";System.out.println(s);System.out.println("我每天花费"+booktime+"小时看书;"+pratice+"小时上机>练习。");   //使用+号将不同类型的变量与字符串拼接起来System.out.println("字符串s1的长度是:"+s1.length());System.out.println("字符串s3中字母'a'的位置是"+s3.indexOf("a")+"。");//>使用函数indexOf查找字符串s3中某字符的位置System.out.println("字符串s3中字母\'s\'最后出现的位置是"+s3.lastIndexOf("s")+"。");System.out.println("字符串s1中索引位置是2的元素是:"+s2.charAt(2)+"。");System.out.println(s3.substring(5));System.out.println(s3.substring(0,5));System.out.println("字符串s4的原始长度为"+s4.length());System.out.println("字符串s4去除首位空格后的长度为"+s4.trim().length());System.out.println();System.out.println("字符替换:");System.out.println(s2);System.out.println(s2.replace("o","O"));System.out.println("字符串s1是以He开头的吗?"+s1.startsWith("He"));System.out.println("字符串s1是以d!结尾的吗?"+s1.endsWith("d!"));System.out.println("字符串s2是以He开头的吗?"+s2.startsWith("He"));System.out.println("字符串s2是以d!结尾的吗?"+s2.endsWith("d!"));}
}

运行结果:

Helloworld!
我每天花费4小时看书;2.5小时上机练习。
字符串s1的长度是:5
字符串s3中字母'a'的位置是3。
字符串s3中字母's'最后出现的位置是14。
字符串s1中索引位置是2的元素是:r。
e students.
We ar
字符串s4的原始长度为18
字符串s4去除首位空格后的长度为11字符替换:
world!
wOrld!
字符串s1是以He开头的吗?true
字符串s1是以d!结尾的吗?false
字符串s2是以He开头的吗?false
字符串s2是以d!结尾的吗?true

二、枚举类型

Java 的枚举类型用来定义一组常量,使用关键字enum定义,各常量采用逗号分割。

enum 定义的枚举类默认继承了 java.lang.Enum 类,并实现了 java.lang.Seriablizable 和java.lang.Comparable 两个接口。values(), ordinal() 和 valueOf() 方法位于 java.lang.Enum 类中:

  • values() 返回枚举类中所有的值。
  • ordinal()方法可以找到每个枚举常量的索引,就像数组索引一样。
  • valueOf()方法返回指定字符串值的枚举常量。
  • compareTo()方法用于比较两个枚举对象在定义时的顺序。正值表示方法的参数在调用该方法的枚举对象之前;0表示方法的参数与调用该方法的枚举对象位置相同;负值表示方法的参数在调用该方法的枚举对象之后。
/**枚举类型的使用方法*/
public class EnumTest{enum Constants{    //定义一个枚举类NAME("韩丽"),AXE("女"),AGE("23"),PRO("程序员");private String description;private int i = 4;private Constants(){   //定义枚举类Constants的默认构造方法}private Constants(String description){   //定义枚举类Constants的带字符类型参的构造方法this.description = description;}private Constants(int i){   //声明参数为int型的构造方法this.i+=i;}public String getDescription(){   //获取description的值return description;}public int getI(){   //获取i的值return i;}}public static void main(String[] args){for(int i=0;i<Constants.values().length;i++){System.out.println(Constants.values()[i]+"是"+Constants.values()[i].getDescription());   //value()方法以数组形式返回被调用枚举变量System.out.println(Constants.values()[1]+"与"+Constants.values()[i]+"的比较结果为:"+Constants.values()[1]pareTo(Constants.values()[i]));   //compare()方法用于比较两个枚举类型变量的位>置先后}System.out.println(Constants.valueOf("AXE")+"调用getI()方法的结果为:"+Constants.valueOf("AXE").getI());   //valueOf()方法用于将普通字符串转换为枚举实例}
}

程序运行结果:

NAME是韩丽
AXE与NAME的比较结果为:1
AXE是女
AXE与AXE的比较结果为:0
AGE是23
AXE与AGE的比较结果为:-1
PRO是程序员
AXE与PRO的比较结果为:-2
AXE调用getI()方法的结果为:4

三、泛型

编程:利用泛型方法实现对多种不同类型数组的遍历功能。

public class TTest{// 泛型方法 printArray                         public static <E> void printArray(E[] inputArray){// 输出数组元素for (E element : inputArray){   //foreach结构遍历E泛型数组        System.out.printf("%s ",element);}System.out.println();}public static void main(String args[]){// 创建不同类型数组: Integer, Double 和 CharacterInteger[] intArray = { 1, 2, 3, 4, 5 };   //创建整型类型数组Double[] doubleArray = { 1.1, 2.2, 3.3, 4.4 };   //创建精度类型数组Character[] charArray = { 'H', 'E', 'L', 'L', 'O' };   //创建字符类型数组System.out.println("整型数组元素为:");printArray(intArray); // 传递一个整型数组System.out.println("\n双精度型数组元素为:");printArray(doubleArray); // 传递一个双精度型数组System.out.println("\n字符型数组元素为:");printArray(charArray); // 传递一个字符型数组}
}

程序运行结果:

整型数组元素为:
1 2 3 4 5 双精度型数组元素为:
1.1 2.2 3.3 4.4 字符型数组元素为:
H E L L O 

更多推荐

Java学习7(字符串、枚举、泛型)

本文发布于:2024-02-27 00:41:03,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1704579.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:字符串   Java   泛型

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!