java - 尝试以墨西哥波浪样式模式将字符更改为大写
问题描述
我正在尝试以墨西哥波浪样式模式一次获取一个字符串并将一个字符转换为大写字母。这就是它应该的样子
Input: hello
Output: Hello
hEllo
heLlo
helLo
hellO
但是,我得到的只是
Input: hello
Output: hello
hello
hello
hello
hello
这就是我的循环当前的样子
for(int i=0;i<s.length();i++)
{
a1=s.charAt(i);
a2=Character.toUpperCase(a1);
System.out.println(s);
}
s 是字符串,a1 和 a2 是两个随机字符,用于存储当前值。
我不熟悉“Character.toUpperCase”,但我在网上找到了它,希望它有助于解决我的问题,但它似乎不是
解决方案
You are printing the same String. To get the desired output, you can do something like following,
String s = "hello";
for(int i=0;i<s.length();i++)
{
char a1 = s.charAt(i);
char a2 = Character.toUpperCase(a1);
if (i == 0)
System.out.println(a2 +s.substring(i+1));
else
System.out.println( s.substring(0,i) +a2 +s.substring(i+1));
}
If yo want to skip if-else condition,
String s = "hello";
System.out.println(s.charAt(0) +s.substring(1)); // for first char
for(int i=1;i<s.length();i++) // for rest of the chars
{
char a1 = s.charAt(i);
char a2 = Character.toUpperCase(a1);
System.out.println( s.substring(0,i) +a2 +s.substring(i+1));
}
推荐阅读
- r - ggplot 根据值以不正确的顺序渲染图
- java - NotifyAll/SignalAll 使线程停止正常工作
- android - 如何修复 FrameLayout 之间的空间 - ConstraintLayout
- java - Program type already present after updating from sdk 27 to 28
- html - 悬停在一种情况下有效,但在另一种情况下无效
- php - 持久完整性约束 Laravel
- c++ - Visual Studio 找不到 GL/glut.h
- c++ - OpenGL - 对象轮廓
- javascript - 如何在数据表中一次对两列进行排序
- python - tkinter 中主框架上的框架布局