java(12)字符串
一、字符串概述
1.1如何使用字符串
1)定义并初始化字符串
2)使用字符串,对字符串进行一些处理
1.2字符串的长度
语法:
字符串1.length(); -->返回字符串1的长度
public class Practice1 {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
String uname,pwd;
System.out.println("请输入用户名:");
uname = input.next();
System.out.println("请输入密码:");
pwd=input.next();
if(pwd.length()>=6){ //判断密码长度
System.out.println("注册成功");
}else{
System.out.println("密码长度不能小于6位");
}
}
}
示例1
运行结果:如图:
1.3 字符串的比较
1)语法:
字符串1.equals(字符串2);
public class Practice2 {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
String uname,pwd;
System.out.println("请输入用户名:");
uname = input.next();
System.out.println("请输入密码:");
pwd=input.next();
if(uname.equals("tom")&&pwd.equals("1234567")){
System.out.println("登入成功");
}else{
System.out.println("用户名或密码不匹配,登录失败");
}
}
}
示例2
运行结果:如图:
疑问:为什么不能使用双等号(==)来判断两个字符串是否相同呢?
1.在Java中,双等号和equals()方法虽都应于两个字符串,但所判断的内容是有差别的
2.双等号判断的是两个字符串对象在内存中的首地址是否相等,即判断是否是同一个字符串对象
3.equals()判断的是两个字符串对象的值是否相等
public class Practice3{
public static void main(String[] args){
String character=new String("我爱你");
String character1=new String("我爱你");
if(character.equals(character1)){
System.out.println("两个字符串值相同");
}else{
System.out.println("两个字符串值不相同");
}
if(character==character1){
System.out.println("两个字符串相同");
}else{
System.out.println("两个字符串不相同");
}
}
}
示例3
运行结果:如图:
2)语法:
字符串1.equalsIgnoreCase(字符串2);
忽略大小写比肩字符串1和字符串2,如果都相同,则返回true,否则返回false
3)语法:
字符串.toLowerCase()——小写
字符串.toUpperCase()——大写
二、复杂点的字符串处理
2.1 字符串连接的方式
方式1:使用+号
方式2:字符串变量.concat(要连接的字符串);
2.2 字符串提取的常用方法
同一个方法,有多种表现形式——方法重载
1 indexOf(字符或字符串),查找字符或字符串首次出现的位置;
返回一个数字,-1表示没有,返回是>=0的数字,表示存在
2 lastIndexOf(字符或字符串),查找字符或字符串最后一次出现的位置;
返回一个数字,-1表示没有,返回是>=0的数字,表示存在
3 substring()方法
1. substring(提取位置):表示从提取位置开始一直提取到字符串的末尾结束
2. substring(开始位置,结束位置):表示提取从开始位置,到结束位置-1的子字符串[结束位置大于整个字符串的长度,出现异常]
4 trim()——去掉字符串左右两边的空格
5 字符串拆分——split()返回字符串数组
2.3、StringBuffer类
1、StringBuffer和String的区别?
String空间或长度是固定的,StringBuffer空间可变
String效率低于StringBuffer类
2、使用StringBuffer类的步骤?
步骤1:先创建对象
StringBuffer 对象名=new StringBuffer();
StringBuffer 对象名=new StringBuffer(默认值);
步骤2:向对象中追加或插入值
StringBuffer对象名.append(追加的值);//可以追加任何值(char,int等)
StringBuffer对象名.insert(要插入的位置,插入的值)
java(12)字符串的更多相关文章
- Java-Runoob-高级教程-实例-字符串:12. Java 实例 - 字符串优化
ylbtech-Java-Runoob-高级教程-实例-字符串:12. Java 实例 - 字符串优化 1.返回顶部 1. Java 实例 - 字符串优化 Java 实例 以下实例演示了通过 Str ...
- Java入门篇(五)——Java的字符串/String类
前面在举例时有出现过String的例子,当时肯定有一部分朋友不知道这个是做什么用的.其实String类是Java中一个比较特殊的类,字符串即String类,它不是Java的基本数据类型之一,但可以像基 ...
- java 二进制数字符串转换工具类
java 二进制数字符串转换工具类 将二进制转换成八进制 将二进制转换成十进制 将二进制转换成十六进制 将十进制转换成二进制 package com.iteye.injavawetrust.ad; i ...
- Java 12 正式发布,8大新特性
自 2 月 7 日开始,Java/JDK 12 就进入了 RC 阶段.按照发布周期,美国当地时间 3 月 19 日,也就是北京时间 20 号 Java 12 正式发布了! 1.Shenandoah:低 ...
- 使用Java对字符串进行升序排序
Java对字符串的很多API和功能是JavaWeb能广泛发展的基础,下面是一道经典的字符串操作题,需要边查JAVASE的API对每个步骤进行操作. 题目:给一个字符串,"34 12 -8 0 ...
- java String字符串
五.java数据类型之String(字符串) CreateTime--2017年7月21日16:17:45 Author:Marydon (一)数据格式 (二)初始化 // 方式一 String ...
- Java判断字符串是否符合yyyyMMdd日期格式
Java判断字符串是否符合yyyyMMdd日期格式 代码: /** * 判断参数的格式是否为“yyyyMMdd”格式的合法日期字符串 * */ public static boolean isVali ...
- Java String 字符串操作小结
// 转载加编辑 -- 21 Apr 2014 1. Java字符串中子串的查找 Java中字符串中子串的查找共有四种方法,如下: 1.int indexOf(String str) :返回第一次出现 ...
- Java字符字符串类
Java字符字符串类 Character 类 Character 类用于对单个字符进行操作.Character 类在对象中包装一个基本类型 char 的值在实际开发过程中,我们经常会遇到需要使用对象, ...
随机推荐
- java 位运算符 以及加法 交换两个变量值
先给出十转二的除法 2 60 30 0 15 0 7 1 3 1 1 1 0 1 60转二 111100 再介绍位运算符 a=60 b=13 A = 0011 1100 B ...
- 【vue】iView-admin2.0动态菜单路由
vue项目实现动态路由有俩种方式 一.前端在routers中写好--所有--路由表 <前端控制路由>,登录时根据用户的角色权限来动态的显示菜单路由 二.前端通过调用接口请求拿到当前用户-- ...
- 小程序组件中有bindinput监听报异常
真机上有问题,ide上是没问题的, 组件有处理函数,结果异常说页面没有处理函数,加上处理函数后就不报异常了.
- nodejs 实现跨域
1.nodejs let http = require('http'); http.createServer((req,res) => { res.setHeader("Access- ...
- 关系型数据库 VS 非关系型数据库
一.关系型数据库? 1.概念 关系型数据库是指采用了关系模型来组织数据的数据库.简单来说,关系模式就是二维表格模型. 主要代表:SQL Server,Oracle,Mysql,PostgreSQL. ...
- django下的xadmin相关设置
后台设置中文在 settings.py LANGUAGE_CODE = 'zh-hans' TIME_ZONE = 'Asia/Shanghai' USE_I18N = True USE_L10N = ...
- Android Connection refused
遇到 Connection refused的错误. AndroidManifest.xml 文件中添加: //网络权限 <uses-permission android:name=" ...
- 科学地增加postgresql最大连接数
PG配置文件路径 /etc/postgresql/9.3/main/postgresql.conf 首先如何查看最大连接数 This SQL will help you select max_conn ...
- python学习日记(面向对象——继承)
什么是继承 继承是一种创建新类的方式,在python中,新建的类可以继承一个或多个父类,父类又可称为基类或超类,新建的类称为派生类或子类 python中类的继承分为:单继承和多继承 class Par ...
- [leetcode] 5.Longest Palindromic Substring-2
想了很多方法 搞轴对称,算对称轴,偶数都高出了一堆0.5在那加加减减,最后发现在移轴之前可能就返回了. class Solution: def longestPalindrome(self, s: s ...