java中函数的返回值能不能是字符串数组,怎样实现?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java中函数的返回值能不能是字符串数组,怎样实现?相关的知识,希望对你有一定的参考价值。
必须可以2.5 字符串的处理
2.5.1 字符串的表示
Java语言中,把字符串作为对象来处理,类String和StringBuffer都可以用来表示一个字符串。(类名都是大写字母打头)
1.字符串常量
字符串常量是用双引号括住的一串字符。
"Hello World!"
2.String表示字符串常量
用String表示字符串:
String( char chars[ ] );
String( char chars[ ], int startIndex, int numChars );
String( byte ascii[ ], int hiByte );
String( byte ascii[ ], int hiByte, int startIndex, int numChars );
String使用示例:
String s=new String() ; 生成一个空串
下面用不同方法生成字符串"abc":
char chars1[]='a','b','c';
char chars2[]='a','b','c','d','e';
String s1=new String(chars1);
String s2=new String(chars2,0,3);
byte ascii1[]=97,98,99;
byte ascii2[]=97,98,99,100,101;
String s3=new String(ascii1,0);
String s4=new String(ascii2,0,0,3);
3.用StringBuffer表示字符串
StringBuffer( ); /*分配16个字符的缓冲区*/
StringBuffer( int len ); /*分配len个字符的缓冲区*/
StringBuffer( String s ); /*除了按照s的大小分配空间外,再分配16个
字符的缓冲区*/
2.5.2 访问字符串
1.类String中提供了length( )、charAt( )、indexOf( )、lastIndexOf( )、getChars( )、getBytes( )、toCharArray( )等方法。
◇ public int length() 此方法返回字符串的字符个数
◇ public char charAt(int index) 此方法返回字符串中index位置上的字符,其中index 值的 范围是0~length-1
◇ public int indexOf(int ch)
public lastIndexOf(in ch)
返回字符ch在字符串中出现的第一个和最后一个的位置
◇ public int indexOf(String str)
public int lastIndexOf(String str)
返回子串str中第一个字符在字符串中出现的第一个和最后一个的位置
◇ public int indexOf(int ch,int fromIndex)
public lastIndexOf(in ch ,int fromIndex)
返回字符ch在字符串中位置fromIndex以后出现的第一个和最后一个的位置
◇ public int indexOf(String str,int fromIndex)
public int lastIndexOf(String str,int fromIndex)
返回子串str中的第一个字符在字符串中位置fromIndex后出现的第一个和最后一个的位置。
◇ public void getchars(int srcbegin,int end ,char buf[],int dstbegin)
srcbegin 为要提取的第一个字符在源串中的位置, end为要提取的最后一个字符在源串中的位置,字符数组buf[]存放目的字符串, dstbegin 为提取的字符串在目的串中的起始位置。
◇public void getBytes(int srcBegin, int srcEnd,byte[] dst, int dstBegin)
参数及用法同上,只是串中的字符均用8位表示。
2.类StringBuffer提供了 length( )、charAt( )、getChars( )、capacity()等方法。
方法capacity()用来得到字符串缓冲区的容量,它与方法length()所返回的值通常是不同的。
2.5.3 修改字符串
修改字符串的目的是为了得到新的字符串,类String和类StringBuffer都提供了相应的方法。有关各个方法的使用,参考java 2 API。
1.String类提供的方法:
concat( )
replace( )
substring( )
toLowerCase( )
toUpperCase( )
◇ public String contat(String str);
用来将当前字符串对象与给定字符串str连接起来。
◇ public String replace(char oldChar,char newChar);
用来把串中出现的所有特定字符替换成指定字符以生成新串。
◇ public String substring(int beginIndex);
public String substring(int beginIndex,int endIndex);
用来得到字符串中指定范围内的子串。
◇ public String toLowerCase();
把串中所有的字符变成小写。
◇ public String toUpperCase();
把串中所有的字符变成大写。
2.StringBuffer类提供的方法:
append( )
insert( )
setCharAt( )
如果操作后的字符超出已分配的缓冲区,则系统会自动为它分配额外的空间。
◇ public synchronized StringBuffer append(String str);
用来在已有字符串末尾添加一个字符串str。
◇ public synchronized StringBuffer insert(int offset, String str);
用来在字符串的索引offset位置处插入字符串str。
◇ public synchronized void setCharAt(int index,char ch);
用来设置指定索引index位置的字符值。
注意:String中对字符串的操作不是对源操作串对象本身进行的,而是对新生成的一个源操作串对象的拷贝进行的,其操作的结果不影响源串。
相反,StringBuffer中对字符串的连接操作是对源串本身进行的,操作之后源串的值发生了变化,变成连接后的串。
2.5.4 其它操作
1.字符串的比较
String中提供的方法:
equals( )和equalsIgnoreCase( )
它们与运算符'= ='实现的比较是不同的。运算符'= ='比较两个对象是否引用同一个实例,而equals( )和equalsIgnoreCase( )则比较 两个字符串中对应的每个字符值是否相同。
2.字符串的转化
java.lang.Object中提供了方法toString( )把对象转化为字符串。
3.字符串"+"操作
运算符'+'可用来实现字符串的连接:
String s = "He is "+age+" years old.";
其他类型的数据与字符串进行"+"运算时,将自动转换成字符串。具体过程如下:
String s=new StringBuffer("he is").append(age).append("years old").toString();
注意:除了对运算符"+"进行了重载外,java不支持其它运算符的重载。 参考技术A 方法1
charAt( );*分配16个字符的缓冲区*/ /。
1.String类提供的方法:
String( char chars[ ] ),其操作的结果不影响源串,char ch),java不支持其它运算符的重载。
2.5.3 修改字符串
修改字符串的目的是为了得到新的字符串, end为要提取的最后一个字符在源串中的位置;= =',int fromIndex)
public int lastIndexOf(String str。
方法capacity()用来得到字符串缓冲区的容量;
String使用示例, int startIndex、capacity()等方法。
2.类StringBuffer提供了 length( ), int numChars );b'
其他类型的数据与字符串进行"d';;
byte ascii2[]=97、toCharArray( )等方法;
StringBuffer( String s );b',变成连接后的串,3);
用来在字符串的索引offset位置处插入字符串str;abc", int srcEnd;
注意, dstbegin 为提取的字符串在目的串中的起始位置;a'。(类名都是大写字母打头)
1.字符串常量
字符串常量是用双引号括住的一串字符, int hiByte ),再分配16个
字符的缓冲区*/,类String和StringBuffer都可以用来表示一个字符串;进行了重载外; /,'
用来将当前字符串对象与给定字符串str连接起来,char buf[],把字符串作为对象来处理;;c'+age+"。
◇ public void getchars(int srcbegin;years old",int fromIndex)
返回字符ch在字符串中位置fromIndex以后出现的第一个和最后一个的位置
◇ public int indexOf(String str;+":
append( )
insert( )
setCharAt( )
如果操作后的字符超出已分配的缓冲区,只是串中的字符均用8位表示;
把串中所有的字符变成大写;a'Hello World、getChars( )、lastIndexOf( ); 生成一个空串
下面用不同方法生成字符串"。有关各个方法的使用。
3.字符串":
String s=new String() ;
2.5.2 访问字符串
1.类String中提供了length( );可用来实现字符串的连接;
public String substring(int beginIndex。
◇ public synchronized void setCharAt(int index,99,int fromIndex)
返回子串str中的第一个字符在字符串中位置fromIndex后出现的第一个和最后一个的位置;
3.用StringBuffer表示字符串
StringBuffer( ),'+'。
注意;比较两个对象是否引用同一个实例,99;
String s4=new Str......
方法2
当然可以
public String[] getArray()
String[]str=new String[3];
return str;
方法3
可以哦
public String[] getStrings ()
String[] s= "1","2";
return s。 参考技术B import java.util.Arrays;
public class Text6
public static void main(String[] args)
String[] str = getStrArr();
System.out.println(Arrays.toString(str));
private static String[] getStrArr()
String[] arr = "什么鬼","随便","哈哈";
return arr;
参考技术C 当然可以
public String[] getArray()
String[]str=new String[3];
return str;
参考技术D 可以哦
public String[] getStrings ()
String[] s= "1","2";
return s;
VB6.0中如何实现逐行读入文本文件?
在VB6.0中想实现读入文本文件XXX.TXT,并且是逐行读入方式,每一行字符即成为一个变量,所有行读完,即可实现每行变量依次组成一个数组,请问如何实现???
语法越简单越好.
VB6.0可以用一次读取文本文件全部文本内容,然后使用Split函数来实现一行一行提取文本框行内容。
Split函数,返回一个下标从零开始的一维数组,它包含指定数目的子字符串。
以下代码是可以提取文本文件任何一行内容的:
Private Sub Command1_Click()Dim strWj As String
Dim strj() As String
Dim aryContent() As Byte
Dim i As Long
Dim j As Long
CommonDialog1.CancelError = True \' 设置“CancelError”为 True
On Error GoTo ErrHandler
CommonDialog1.Flags = cdlOFNHideReadOnly \' 设置标志
\' 设置过滤器
CommonDialog1.Filter = "All Files (*.*)|*.*|Text Files" & "(*.txt)|*.txt|Batch Files (*.bat)|*.bat"
CommonDialog1.FilterIndex = 2 \' 指定缺省的过滤器
CommonDialog1.ShowOpen \' 显示“打开”对话框
\' 显示选定文件的名字
\'MsgBox CommonDialog1.FileName
Open CommonDialog1.FileName For Binary As #1
ReDim aryContent(LOF(1) - 1)
Get #1, , aryContent
Close #1
strWj = StrConv(aryContent, vbUnicode)
RichTextBox1 = strWj
Text1 = strWj
strj = Split(strWj, vbCrLf)
i = UBound(strj)
Text2 = i + 1
j = InputBox("输入需要显第几句", j)
j = j - 1
Label1.Caption = j + 1 & ":" & strj(j)
Exit Sub
ErrHandler:
\' 用户按了“取消”按钮
Exit Sub
End Sub 参考技术A Dim a() as String
Open "XXX.txt" for input as #1
Do While Not EOF(1)
i=i+1
redim preserve a(i)
line input #1,a(i)
loop
close #1
数组a()就是所需数组本回答被提问者采纳 参考技术B Line Input 可以读一行文本:
使用格式:
dim s as string
Open "c:\1.txt" for input as #1
line input #1,s
text1.text = s
close #1
另外还可以用 EOF 判断是否到行尾
以上是关于java中函数的返回值能不能是字符串数组,怎样实现?的主要内容,如果未能解决你的问题,请参考以下文章