String s1 = "abc";
String s2 = "abc";
System.out.println(s1==s2); //返回true string s1=‘abc’ string s2=‘abc’ string的值是存储于常量池里边的,当给string赋值的时候回先到常量池寻找是否有相同的值。 String s3 = new String("abc");
String s4 = new String("abc");
System.out.println(s3==s4); //返回false System.out.println(s3.equals(s4))//返回true

基础类型数据存储于栈空间 引用类型数据存储于堆空间

string s1=‘abc’ string s2=‘abc’ string的值是存储于常量池里边的,当给string赋值的时候回先到常量池寻找是否有相同的值。
equals方法: String里的equals方法重写了object对象里的equals方法
String里的equals方法第一步也是会判断地址值是否相等,相等返回true ,不相等再去判断里面的值是否相等。

str.length 返回整个字符串的长度。
str.trim 去掉字符串两边的空格
str.trim.length 返回整个字符串的长度
str.charAt(); 取出字符串中指定索引位置的字符
str.contains(CharSequence s); 当此字符串包含指定的 char 值时,返回 true。
str.startWith(String s); 判断字符串是否以括号中的字符串开始
str.endWith(String s); 判断字符串是否以括号中的字符串结束
replace(char o, char n); 将指定的字符替换掉指定的字符
replace(CharSequence o, CharSequence n); 将指定的字符串替换掉指定的字符串
split(String s); 将字符串分割成字符串
toUpperCase(); 将字符串转换成大写
toLowerCase(); 将字符串转换成小写
valueOf(any args); 
str.indexOf(String s); 返回指定子字符串在此字符串中第一次出现处的索引。
str.lastIndexOf(String s);返回指定子字符串在此字符串中最后一次出现处的索引。
str.substring(int i); 返回一个新的字符串,它是此字符串的一个子字符串
str.substring(int a, int b); str.substring( int beginIndex, int endIndex)

package com.test;

public class lianxi {
public static void main(String[] args) {
String str = "像勇士这样的球队,只有防守一松懈,他们才能抓住机会,"
+ "打完了三场,爵士还是没找到应对勇士的办法";
//"球队","机会"
System.out.println(str.indexOf("球队"));
System.out.println(str.indexOf("机会"));
System.out.println(str.lastIndexOf("勇士")); int m = str.indexOf("球队") + str.indexOf("机会") + str.lastIndexOf("勇士");
System.out.println(m);
System.out.println((char)m);
System.out.println(str.split(",")[4]); String[] newstr = str.split(""); //用空字符串将这一段话分割成多个以每一个字为一个字符串的数组。
String temp = "";
for (int i = 0; i < newstr.length; i++) {
if(newstr[i].equals("勇")) {
newstr[i] = "爵";
} else if(newstr[i].equals("爵")) {
newstr[i] = "勇";
}
temp+=newstr[i];
}
System.out.println(temp);
//勇士抓住机会,找到应对办法
System.out.print(str.substring(str.indexOf("勇士"),str.indexOf("勇士")+2));
System.out.print(str.substring(str.indexOf("抓住机会"),str.indexOf("抓住机会")+4));
System.out.print(str.substring(str.indexOf(","),str.indexOf(",")+1));
System.out.print(str.substring(str.indexOf("找到应对"),str.indexOf("找到应对")+4));
System.out.print(str.substring(str.indexOf("办法"),str.indexOf("办法")+2));
System.out.println(); String qqEmail = "123@qq.com";
System.out.println(qqEmail.substring(0,qqEmail.indexOf("@")));

  

//增强for循环
public class ForArray
{
public static void main(String[] args)
{
int[] arr = {1,2,3,4,5,6,7}; for(int a:arr)
{
System.out.print(a);
}
}
}
/*
for (循环变量类型 循环变量名称 : 要被遍历的对象) 循环体
例子中,
1.arr就是为 要被遍历的对象,可以是数组,集合
2.循环变量类型就是这个arr数组的数据类型,即int
3.循环变量名称就是a,这个可以自己定义
*/

  

包装类:
Integer.parseInt();

byte---Byte
short---Short
int---Integer
long---Long

float---Float
double---Double

boolean---Boolean

char---Character

System.out.println(Integer.MAX_VALUE);
System.out.println(Byte.MIN_VALUE);
System.out.println(Byte.MAX_VALUE);
System.out.println(Long.MIN_VALUE);
System.out.println(Long.MAX_VALUE);
System.out.println(Short.MIN_VALUE);
System.out.println(Short.MAX_VALUE);

System.out.println(Float.MIN_VALUE);
System.out.println(Float.MAX_VALUE);
System.out.println(Double.MIN_VALUE);
System.out.println(Double.MAX_VALUE);

//空心正方形(进入for循环先判断i的值,如果i的值在1~7之间而且j=0或者7的时候,那么打印出除了第一行与最后一行的※,当i=1或7的时候第一行跟最后一行的※都打印出来)
/*for( int i=0; i<8; i++){
if(i>0&&i<7){ //先判断 i的值是否在1-7这个区间,
for(int j=0;j<8;j++){
if(j==0||j==7){
System.out.print("*"+" ");}
else{
System.out.print(" "+" ");}
}
}else{
for( int l=0; l<8;l++){
System.out.print("*"+" ");
}
}System.out.println();
}*/ //输出空心菱形。
for( int i=4; i<7; i++){
for( int j=8;j>0;j--){
if(j==i||j==8-i){
System.out.print("*");
}else{
System.out.print(" ");
}
}System.out.println();
}
for( int i=1; i<5; i++){
for( int j=8;j>0;j--){
if(j==i||j==8-i){
System.out.print("*");
}else{
System.out.print(" ");
}
}System.out.println();
} //实心菱形
for( int i=4; i>0; i--){ //菱形的上半部分是随着i值得变动输出的*越来越多,所以i值应该是自减
for( int j=0;j<8;j++){
if(j>i&&j<8-i){
System.out.print("*");
}else{
System.out.print(" ");
}
}System.out.println();
}
for( int i=0; i<4; i++){
for( int j=0;j<8;j++){
if(j>i&&j<8-i){
System.out.print("*");
}else{
System.out.print(" ");
}
}System.out.println();
} }

  

包装类、数组、string类浅析及练习的更多相关文章

  1. Java基本数据类型、包装类与String类之间的转换

    一.基本数据类型与包装类之间的转换: import org.junit.Test; public class MainTest { /** * 基本数据类型与包装类之间的转换 */ @Test pub ...

  2. Java.lang 包 (包装类、String类、Math类、Class类、Object类)

    Java 的核心 API(Application Programming Interface)是非常庞大的,这给开发者带来了很大的方便. java.lang 包是 Java 的核心类库,它包含了运行 ...

  3. JAVASE(十二) Java常用类: 包装类、String类、StringBuffer类、时间日期API、其他类

    个人博客网:https://wushaopei.github.io/    (你想要这里多有) 1.包装类 1 .1 八个包装类 ​ 1. 2 基本数据类型,包装类,String者之间的转换 ​ 2. ...

  4. java常用类,包装类,String类的理解和创建对象以及StringBuilder和StringBuffer之间的区别联系

    一.包装类的分类: 1.黄色部分的父类为Number 继承关系: Boolean Character 其他六个基本数据类型 2.装箱和拆箱 理解:一个例子,其他的都相同 装箱:Integer inte ...

  5. Codeforces Round #442 A Alex and broken contest【字符串/常量数组/string类】

    A. Alex and broken contest time limit per test 2 seconds memory limit per test 256 megabytes input s ...

  6. 【面试题】String类、包装类的不可变性

    不可变类的意思是创建该类的实例后,该实例的实例变量是不可改变的.Java提供的8个包装类和String类都是不可变类.因此String和8个包装类都具有不可变性. 就拿String类来说,通过阅读St ...

  7. Java中字符数组、String类、StringBuffer三者的相互转换

    一.StringBuffer与String的相互转换 1.将StringBuffer转换成String StringBuffer类成员toString函数可将其转换成String类型. StringB ...

  8. 包装类、基本数据类型及String类之间的相互转换

    包装类:8种基本数据类型对应一个类,此类即为包装类 一.基本数据类型 包装类 及String之间的转换 1.基本数据类型转化为包装类:调用包装类的构造器      int i=10;     Inte ...

  9. Java——String类

    body, table{font-family: 微软雅黑; font-size: 10pt} table{border-collapse: collapse; border: solid gray; ...

随机推荐

  1. Kotlin入门第三课:数据类型

    前文链接: Kotlin学习第一课:从对比Java开始 Kotlin入门第二课:集合操作 初次尝试用Kotlin实现Android项目 Kotlin的数据类型与Java类似,因此这篇文章主要看Kotl ...

  2. INFORMATION_SCHEMA.PROFILING

    24.18 The INFORMATION_SCHEMA PROFILING Table PROFILING表提供了语句分析信息. 其内容对应于SHOW PROFILES和SHOW PROFILE语句 ...

  3. java面试题之int和Integer的区别

    int和Integer的区别 1.Integer是int的包装类,int则是java的一种基本数据类型 2.Integer变量必须实例化后才能使用,而int变量不需要 3.Integer实际是对象的引 ...

  4. DOUAudioStreamer 中kqueue的应用

    DOUAudioStreamer是一个基于Core Audio的流式音频播放器,其中的DOUAudioEventLoop通过kqueue来控制音频的各种状态. kqueue简介(详情请看官方manua ...

  5. 常见类——Object

    1.在Java类继承结构中Java.lang.Object类位于顶端   2.如果定义一个Object类没有使用extends关键字声明其父类,则其父类为Java.lang.Object类   3.O ...

  6. linux切换g++

    sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.4 50(优先级) sudo update-alternative ...

  7. Vivado2015.4使用教程(一个完成工程的建立)

    双击桌面的vivado图标,(可能有点慢) 弹出主菜单界面,点击create new project 这是介绍界面,next~ 添加好工程名,和工程位置,next~ 选择rtl Project,nex ...

  8. 解决ionic2各种坑文章收集

    小白最近打算用ionic2做一个APP,无奈没有大神指点,一路坎坷遇到数不清的坑(主要是墙的问题).这里整理一些大神的帖子链接,用以指路. 新建/打包: Ionic2+Angular2创建项目打包An ...

  9. C++汉诺塔递归实现

    程序背景: 汉诺塔(Tower of Hanoi)又称河内塔,问题是源于印度一个古老传说的益智玩具.大梵天创造世界的时候做了三根金刚石柱子,在一根柱子上从下往上按照大小顺序摞着64片黄金圆盘.大梵天命 ...

  10. Java集合源码分析之 LinkedList

    一.简介 LinkedList是一个常用的集合类,用于顺序存储元素.LinkedList经常和ArrayList一起被提及.大部分人应该都知道ArrayList内部采用数组保存元素,适合用于随机访问比 ...