Java 每个字母之间的字符
在Java中,我有一个字符串,例如“Test” 我想将字符串更改为每个字母前都有一个1,如下所示: “1T11T” 这只是为了测试,因为我稍后会将其更改为我想要的 我知道我可以这样做字符串,但用户输入一个单词。我想把它格式化 无论如何,我可以做到这一点?是的,可以做到 使用a通过迭代字符,为每个字符Java 每个字母之间的字符,java,string,character,Java,String,Character,在Java中,我有一个字符串,例如“Test” 我想将字符串更改为每个字母前都有一个1,如下所示: “1T11T” 这只是为了测试,因为我稍后会将其更改为我想要的 我知道我可以这样做字符串,但用户输入一个单词。我想把它格式化 无论如何,我可以做到这一点?是的,可以做到 使用a通过迭代字符,为每个字符c,以及1和c构建一个具有修改属性的新字符串 String s = "test"; //your string, could be supplied by user from input as wel
c
,以及1
和c
构建一个具有修改属性的新字符串
String s = "test"; //your string, could be supplied by user from input as well
StringBuilder sb = new StringBuilder(); //the StringBuilder
//this iterates the string and puts in the builder 1 before any character
for (char c : s.toCharArray()) sb.append(1).append(c);
//done. print the new string:
System.out.println(sb.toString());
是的,可以做到
使用a通过迭代字符,为每个字符c
,以及1
和c
构建一个具有修改属性的新字符串
String s = "test"; //your string, could be supplied by user from input as well
StringBuilder sb = new StringBuilder(); //the StringBuilder
//this iterates the string and puts in the builder 1 before any character
for (char c : s.toCharArray()) sb.append(1).append(c);
//done. print the new string:
System.out.println(sb.toString());
是的,可以做到
使用a通过迭代字符,为每个字符c
,以及1
和c
构建一个具有修改属性的新字符串
String s = "test"; //your string, could be supplied by user from input as well
StringBuilder sb = new StringBuilder(); //the StringBuilder
//this iterates the string and puts in the builder 1 before any character
for (char c : s.toCharArray()) sb.append(1).append(c);
//done. print the new string:
System.out.println(sb.toString());
是的,可以做到
使用a通过迭代字符,为每个字符c
,以及1
和c
构建一个具有修改属性的新字符串
String s = "test"; //your string, could be supplied by user from input as well
StringBuilder sb = new StringBuilder(); //the StringBuilder
//this iterates the string and puts in the builder 1 before any character
for (char c : s.toCharArray()) sb.append(1).append(c);
//done. print the new string:
System.out.println(sb.toString());
.试试看
public class Foo
{
public static void main(String []args)
{
String s1 = "Test" ;
String s2 = "" ;
for(int i=0; i<s1.length(); i++)
{
s2 += ( "1" + s1.charAt(i) ) ;
}
System.out.println(s2) ;
}
}
公共类Foo
{
公共静态void main(字符串[]args)
{
字符串s1=“测试”;
字符串s2=“”;
对于(int i=0;it)
public class Foo
{
public static void main(String []args)
{
String s1 = "Test" ;
String s2 = "" ;
for(int i=0; i<s1.length(); i++)
{
s2 += ( "1" + s1.charAt(i) ) ;
}
System.out.println(s2) ;
}
}
公共类Foo
{
公共静态void main(字符串[]args)
{
字符串s1=“测试”;
字符串s2=“”;
对于(int i=0;it)
public class Foo
{
public static void main(String []args)
{
String s1 = "Test" ;
String s2 = "" ;
for(int i=0; i<s1.length(); i++)
{
s2 += ( "1" + s1.charAt(i) ) ;
}
System.out.println(s2) ;
}
}
公共类Foo
{
公共静态void main(字符串[]args)
{
字符串s1=“测试”;
字符串s2=“”;
对于(int i=0;it)
public class Foo
{
public static void main(String []args)
{
String s1 = "Test" ;
String s2 = "" ;
for(int i=0; i<s1.length(); i++)
{
s2 += ( "1" + s1.charAt(i) ) ;
}
System.out.println(s2) ;
}
}
公共类Foo
{
公共静态void main(字符串[]args)
{
字符串s1=“测试”;
字符串s2=“”;
对于(int i=0;i这样的东西应该可以:
String sample="Test";
String append="1";
StringBuffer sb=new StringBuffer(sample.length()*append.length());
for(int i=0; i<sample.length(); i++) {
sb.append(append).append(sample.charAt(i));
}
System.out.println(sb.toString(); //result
String sample=“Test”;
字符串append=“1”;
StringBuffer sb=新的StringBuffer(sample.length()*append.length());
对于(int i=0;i这样的东西应该可以:
String sample="Test";
String append="1";
StringBuffer sb=new StringBuffer(sample.length()*append.length());
for(int i=0; i<sample.length(); i++) {
sb.append(append).append(sample.charAt(i));
}
System.out.println(sb.toString(); //result
String sample=“Test”;
字符串append=“1”;
StringBuffer sb=新的StringBuffer(sample.length()*append.length());
对于(int i=0;i这样的东西应该可以:
String sample="Test";
String append="1";
StringBuffer sb=new StringBuffer(sample.length()*append.length());
for(int i=0; i<sample.length(); i++) {
sb.append(append).append(sample.charAt(i));
}
System.out.println(sb.toString(); //result
String sample=“Test”;
字符串append=“1”;
StringBuffer sb=新的StringBuffer(sample.length()*append.length());
对于(int i=0;i这样的东西应该可以:
String sample="Test";
String append="1";
StringBuffer sb=new StringBuffer(sample.length()*append.length());
for(int i=0; i<sample.length(); i++) {
sb.append(append).append(sample.charAt(i));
}
System.out.println(sb.toString(); //result
String sample=“Test”;
字符串append=“1”;
StringBuffer sb=新的StringBuffer(sample.length()*append.length());
对于(int i=0;i请告诉我们你到目前为止试过什么。我不能,不知道如何:P现在尝试……请告诉我们你到目前为止试过什么。我不能,不知道如何:P现在尝试……请告诉我们你到目前为止试过什么。我不能,不知道如何:P现在尝试……请告诉我们你到目前为止试过什么。我不能,不知道如何:P尝试注意,理论上这是一个低效的解决方案,因为每次迭代都需要从头开始创建一个新的字符串对象,所以需要花费O(n^2)
时间是的,确实有点低效。我在发布我的示例后看到了您的示例。如果有任何问题,请避免在循环中连接字符串,而是使用StringBuffer
。请注意,从理论上讲,这是一个低效的解决方案,因为每次迭代都需要从头开始创建一个新的字符串对象,因此需要花费O(n^2)
时间。(JIT可能会为您优化它)是的,确实有点低效。我在发布我的示例后看到了您的示例。如果有任何问题,请避免在循环中连接字符串,使用StringBuffer
。请注意,理论上这是一个低效的解决方案,因为它需要O(n^2)
由于每次迭代都需要从头开始创建一个新的字符串对象,所以需要一段时间。(但是JIT可能会为您优化它)是的,确实有点低效。我在发布我的示例后看到了您的示例。如果有任何问题,请避免在循环中连接字符串,而是使用StringBuffer
。请注意,从理论上讲,这是一个低效的解决方案,因为每次迭代都需要从头开始创建一个新的字符串对象,因此需要花费O(n^2)
时间。(然而,JIT可能会为您优化它)是的,确实有点低效。我在发布我的示例后看到了您的示例。如果有任何问题,请避免在循环中连接字符串,而是使用StringBuffer
。如果您知道字符串的最终大小,请使用构造函数中的容量创建缓冲区,以避免性能问题完美!还有一件事,我可以选择每个字母都有完全不同的“附加字符”?例如,1T2e3s4t,但它适用于任意长度的字母。因为我实际上想要的是在每个字符前出现一个随机数,所以有一次可能是“1T2e”和其他“9T3e”。不,你刚才提出了一个问题,现在我只是想问一下上述是否可行。如果可行的话,你的答案将是完美的。我没有运行我的IDE,我可能忘记了括号或一些容易修复的东西。如果你知道字符串的最终大小,在构造函数中创建具有容量的缓冲区以避免性能问题完美!还有一件事,我可以为每个lette选择完全不同的“附加字符”吗r?例如,1T2e3s4t,但它适用于任何长度的字母。因为我实际上想要的是在每个字符前出现一个随机数,所以有一次可能是“1T2e”和其他“9T3e”。不,你刚才的问题很正确,现在我只是问上述是否可行。如果可行,你的答案将是完美的。我没有运行我的IDE,我可能忘记了括号或一些易于修复的东西如果您知道字符串的最终大小,请在构造函数中创建具有容量的缓冲区以避免性能问题完美!还有一件事,我可以永远选择完全不同的“附加字符”吗