一文读懂Java中的String类之助力Java进阶之路

news2024/11/9 3:47:28

🔝🔝🔝🔝🔝🔝🔝🔝🔝🔝🔝🔝🔝🔝🔝

 🥇博主昵称:Jovy. 

🍟博客主页:Jovy.的博客

🥗感谢点赞👍评论🃌

⚇很方便的在线编辑器:Lightly

让我们一起在写作中记录学习吧!

目录

前言

String

子串

字符串拼接

不同数据类型字符串拼接

字符串不可变

检测字符串是否有相等

空串以及Null串


前言

本人原csdn名(Jovy.)现更名为(小菜元)希望与大家共成长!

在这一个多月的停更的时间里,我去耐心钻研了Java核心技术卷,这本书让我对Java又有了新层次上的理解,希望今天这篇回归篇(对于String内容)的讲解能让大家对String有一个新的理解和认识!

String

String也被叫做字符串,他与char类型不同,因为Java内部本身不提供字符串类型,String代表Java中的一个类,和数据类型不同,他只是一个类

区别char                        String
类型数据类型
表示方法通过单引号赋值通过双引号赋值
String 标识符 = "字符串";    //这是字符串声明及初始化

子串

String中的substring方法可以将字符串的部分提取出来(你可以将他理解为Python中的字符串切片

public class HelloWorld{

     public static void main(String []args){
         String ff = "1234567";
         String cc = ff.substring(0,2);
        System.out.println(cc);    //运行结果为12
     }
}

Java字符串的代码单元和码点是从0开始的(0代表的是第一个字符)从这个代码中我们可以看出来,substring方法采取的是左闭右开的,所以他只输出到第二个字符串!

字符串拼接

字符串拼接就是将几个或多个字符串拼接在一起,组成一个新的字符串,和其他的语言一样,Java可以使用+来对字符串进行拼接!

public class HelloWorld{

     public static void main(String []args){
         String kk = "123";
         String uu = "456";
         String gg = kk+uu;
        System.out.println(gg);       //此代码运行结果为123456
     }
}           

不同数据类型字符串拼接

如下面代码所示,将int类型与字符串进行拼接最后结果还是属于字符串的结果(任意一个Java对象都可以转换为String类型!

public class HelloWorld{

     public static void main(String []args){
         String kk = "123";
         int uu = 456;
         String gg = kk+uu;
        System.out.println(gg);    //结果为123456
     }
}

字符串不可变

Java的String类中没有提供可以改变字符串中的某个字符的方法,但是我们可以结合上面我们所说的拼接和子串

/* Online Java Compiler and Editor */
public class Arr{

     public static void main(String []args){
         String kk = "123456";
         kk = "111"+kk.substring(0,3);
        System.out.println(kk);    //运行结果为111123
     }
}

正如这样,我们就可以实现将字符串进行改变,使得字符串中的几个或是多个字符进行改变,来取得我们需要的字符串

检测字符串是否有相等

/* Online Java Compiler and Editor */
public class HelloWorld{

     public static void main(String []args){
         String a = "1";
         if(a.equals("1")){
             System.out.println("yes");
         }else{
             System.out.println("no");
         }
        
     }
}

调用方式:s.equals("x")

空串以及Null串

空串也就是长度为0的字符串用:""来表示(不要在引号里加空格,这样会导致不是所要的空串)

/* Online Java Compiler and Editor */
public class HelloWorld{

     public static void main(String []args){
         String a = "";
         if(a.length()==0){
             System.out.println("yes");
         }else{
             System.out.println("no");
         }
        
     }
}

以上代码就是一种判断空串的方法,还可以用我们刚讲的equals方法

/* Online Java Compiler and Editor */
public class HelloWorld{

     public static void main(String []args){
         String a = "";
         if(a.equals("")){
             System.out.println("yes");
         }else{
             System.out.println("no");
         }
        
     }
}

以上代码用途如同上一个代码

String变量还可以存储null这一个特殊的值,表示目前没有对象与该变量关联

希望大家能在Java学习的道路上越走越远!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/58937.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

以太网 TCP协议(三次握手、四次挥手)

2.7.0 以太网 TCP协议(三次握手、四次挥手) 传输控制协议(TCP,Transmission Control Protocol)是一种面向连接的、可靠的传输层通信协议。 面向连接:指使用TCP协议的程序在使用的时候,需要预先进…

PLC远程维护解决方案

一、方案背景:随着工业4.0大力推动智能制造,完善的售后维护和技术服务逐步被各设备厂商所重视,服务将成为企业新的利益增长点,传统的售后服务已经远远不能满足客户需求,甚至给公司带来一定的经营成本和维护成本的压力&…

volatile与Java内存模型

volatile与Java内存模型 被volatile修改的变量有2大特点 特点 可以保证 1.可见性 2.有序性 还是那张图,volatile只能保证可见性和有序性 那为什么volatile可以实现这些功能呢 volatile的内存语义 当写一个volatile变量时,JMM会把该线程对应的本地…

# 智慧社区管理系统-基础信息管理-05车位管理

一后端 1:entuty package com.woniu.community.entity;import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor;Data AllArgsConstructor NoArgsConstructor public class Parking {private int id;private String numbers;//车位号private…

SQL 专项笔记

SQL语句分类 1.DDL 数据库定义语言 主要是用于来操作数据库 以及数据库表 关键字 alter drop create truncate DQL 数据库查询语言 主要是用于操作数据库表 主要用于查询数据库中的数据 关键字 selectDML 数据库操纵语言 主要是用于操作数据库中数据表 主要是对数据进行 增加…

Sequence和Item

一、概述 sequence指的是uvm_sequence类,而item指的是uvm_sequence_item类。对于激励生成和场景控制,是由sequence来编织的,而对于激励所需要的具体数据和控制要求,则是从item的成员数据得到的。 二、Sequence Item介绍 item是基…

【前端设计】SDC中生成时钟create_generated_clock语法解析

我们的目标是┏ (゜ω゜)=☞芯片前端全栈工程师~喵! 前言 好久没有写前端设计系列的博客了,这次因为要在系统里加入时钟分频器因此复习一下sdc中关于生成时钟的约束语法,以下内容来自《综合与时序分析的设计约束》和一些自己的理解。 生成时钟 在sdc约束中,由端口输入的…

JavaScript -- 07. 面向对象编程

文章目录面向对象编程1 面向对象编程介绍2 类3 属性4 方法5 构造函数6 封装7 多态8 继承9 对象的内存结构10 原型10.1 原型链10.2 原型的作用:11 修改原型12 instanceof和hasOwn12.1 instanceof12.2 in12.3 hasOwnProperty12.4 hasOwn13 旧类14 new运算符面向对象编…

用上了mac才知道的一些事,献给Mac新手

以前电脑用windows,工作后刚用上mac,发现很多使用逻辑挺让人感觉新奇,甚至摸不着头脑,下面一一列举,帮助想要入手Mac的新手! 1、鼠标滚轮的逻辑和Windows相反。 Mac上滚动鼠标控制页面上下滚动的逻辑和Windows刚好相…

使用 Learner Lab - 使用 S3 静态网页上传图片,搭配 API Gateway 与 Lambda

使用 Learner Lab - 使用 S3 静态网页上传图片,搭配 API Gateway 与 Lambda AWS Academy Learner Lab 是提供一个帐号让学生可以自行使用 AWS 的服务,让学生可以在 100 USD的金额下,自行练习所要使用的 AWS 服务,如何进入 Learne…

分割研究~~总结

搬来了基于实例分割的最新进展和发展历程,首先介绍了实例分割的基本逻辑,总结了目前主要研究方法及其原理和网络架构,对已发表的主流实例分割方法进行分析,最后对实例分割任务目前面临 的问题以及未来的发展趋势做出了分析,并针对所面临的问题…

磨金石教育插画干货分享|日本插画为什么独树一帜,那么受欢迎

插画的起源很早,在人类诞生文明的初级阶段,就有了岩画与壁画。在古典文明时代,中国印刷行业有了较大的发展,与之伴随的就是插画的长足发展。中国文化对日本起到了极大的影响。 在插画领域也是如此,客观的说&#xff0c…

CCF走进高校

CCF走进高校(山东大学-人机专委) 陶建华 人工智能与智能交互 人工智能的能力体系 感知智能:发展较快,人机交互场景运用较多; 认知智能:发展相对不成熟。 此外,专用智能领域发展较快&#xff0…

shell编程(一)

shell 简介 Shell 是一个用 C 语言编写的程序,一般我们说的shell编程,是指编写shell脚本。 Shell 负责完成用户与内核之间的交互(shell是一个命令解释器,负责将用户的命令解析成操作系 统所能理解的指令) 第一个shell脚本 创建…

Vue刷新后页面数据丢失问题的解决过程

在做vue项目的过程中有时候会遇到一个问题,就是进行F5页面刷新的时候,页面的数据会丢失,这篇文章主要给大家介绍了关于Vue刷新后页面数据丢失问题的解决过程,需要的朋友可以参考下! 一、为什么刷新后数据会丢失 vuex存储的数据只是在页面中,相当于全局变…

[附源码]计算机毕业设计学习帮扶网站设计与实现Springboot程序

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

Linux文件系统调用接口文件描述符的理解

🧸🧸🧸各位大佬大家好,我是猪皮兄弟🧸🧸🧸 文章目录一、对系统调用进行封装的理由二、文件的系统调用接口① openopen的选项--位图open的权限程序中设置umask权限掩码②close③write④read三、…

字节输入流【InputStream】(读文件)

字节输入流【InputStream】 java.io.InputStream 抽象类是表示字节输入流的所有类的超类,可以读取字节信息到内存中。它定义了字节输入流的基本共性功能方法。 public void close(): 关闭此输入流并释放与此流相关联的任何系统资源。 public abstract int read(): …

Telegraf

Telegraf是什么? Telegraf 是 InfluxData 公司开源的一款十分流行的指标采集软件,可以从数据库、系统和物联网传感器收集和发送度量和事件,它用Go编写,编译成一个没有外部依赖的二进制文件–需要非常少的内存,相…

数仓建模理论(一)

学习目录一、关系建模与维度建模二、维度表和事实表(重点)三、事实表类型四、维度模型分类一、关系建模与维度建模 (1)关系建模 关系建模将复杂的数据抽象为两个概念——实体和关系,并使用规范化的方式表示出来。关系…