包装类、数组、string类浅析及练习
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类浅析及练习的更多相关文章
- Java基本数据类型、包装类与String类之间的转换
一.基本数据类型与包装类之间的转换: import org.junit.Test; public class MainTest { /** * 基本数据类型与包装类之间的转换 */ @Test pub ...
- Java.lang 包 (包装类、String类、Math类、Class类、Object类)
Java 的核心 API(Application Programming Interface)是非常庞大的,这给开发者带来了很大的方便. java.lang 包是 Java 的核心类库,它包含了运行 ...
- JAVASE(十二) Java常用类: 包装类、String类、StringBuffer类、时间日期API、其他类
个人博客网:https://wushaopei.github.io/ (你想要这里多有) 1.包装类 1 .1 八个包装类 1. 2 基本数据类型,包装类,String者之间的转换 2. ...
- java常用类,包装类,String类的理解和创建对象以及StringBuilder和StringBuffer之间的区别联系
一.包装类的分类: 1.黄色部分的父类为Number 继承关系: Boolean Character 其他六个基本数据类型 2.装箱和拆箱 理解:一个例子,其他的都相同 装箱:Integer inte ...
- 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 ...
- 【面试题】String类、包装类的不可变性
不可变类的意思是创建该类的实例后,该实例的实例变量是不可改变的.Java提供的8个包装类和String类都是不可变类.因此String和8个包装类都具有不可变性. 就拿String类来说,通过阅读St ...
- Java中字符数组、String类、StringBuffer三者的相互转换
一.StringBuffer与String的相互转换 1.将StringBuffer转换成String StringBuffer类成员toString函数可将其转换成String类型. StringB ...
- 包装类、基本数据类型及String类之间的相互转换
包装类:8种基本数据类型对应一个类,此类即为包装类 一.基本数据类型 包装类 及String之间的转换 1.基本数据类型转化为包装类:调用包装类的构造器 int i=10; Inte ...
- Java——String类
body, table{font-family: 微软雅黑; font-size: 10pt} table{border-collapse: collapse; border: solid gray; ...
随机推荐
- 一篇%3CDIV%20style%3D%22FONT-SIZE%
%3CDIV%20style%3D%22FONT-SIZE%3A%2016px%22%3E1%EF%BC%8C%E6%88%91%E4%BB%A5%E4%B8%BA%E7%BB%88%E6%9C%89 ...
- Win7如何取消用户登陆界面
Window取消用户登陆界面 用户已设置密码状态下:删除密码即可. 用户无密码状态下: 运行 → control userpasswords2 → 找到“要使用本机,用户必须输入用户名与密码”这一项, ...
- 基于HTML5 Canvas 实现弹出框
用户鼠标移入时,有弹出框出现,这样的需求很常见.这在处理HTML元素实现时简单,但是如果是对HTML5 Canvas 构成的图形进行处理,这种方法不再适用,因为Canvas使用的是另外一套机制,无论在 ...
- css代码初始化
@charset "utf-8";/* 页面元素初始化和常用样式定义-start *//*======== 全局 ========*/body, div, dl, dt, dd, ...
- 邪恶改装:TPYBoard制作廉价WIFI干扰器
转载请注明:@小五义http://www.cnblogs.com/xiaowuyi 0X01 引言 想不想搞个WIFI干扰器?网上搜集了一下资料,发现用esp8266可以实现简单的干扰功能,包括断网. ...
- JavaScript数组知识点
强类型语言数组特点:连续的,指定好长度, 还要规定好数据类型弱类型语言数组特点:不一定是连续的 可以不用指定长度 不限定数据类型(可以存储任意类型的数据)数组定义方式:1.var arr=new Ar ...
- 实现容器的底层技术 - 每天5分钟玩转 Docker 容器技术(30)
为了更好地理解容器的特性,本节我们将讨论容器的底层实现技术.cgroup 和 namespace 是最重要的两种技术.cgroup 实现资源限额, namespace 实现资源隔离. cgroup c ...
- [1] Entity Framework / Code First
CodeFirst是EntityFramework的一种技术手段,因为传统编程方式都是先建立数据库,然后根据数据库模型为应用程序建模,再进行开发:CodeFirst从字面上理解就是代码先行,先在程序中 ...
- MYSQL更改root password时遇到Access Denied的解决办法
今天在公司虚拟机上装MYSQL之后需要修改root password,然而遇到这样的错误: Access denied for user 'root'@'localhost' (using passw ...
- 使用jQuery筛选排除元素以修改指定标签的属性
简单案例: $(function(){ $("td[id][id!='']").click(function(){ //你的逻辑 }); }); 上述代码,有id且id不为空的td ...