java编写一个程序,接收一个字符串,将字符串中每个单词的首字母改为大写,并通过GUI输入和输出。
GUI的输入输出参考这个,中间计算部分调用下面的java方法
https://blog.51cto.com/u_15127695/3787707
public class Test {
public static String formatFirst(String str) {
String newstring = "";
String[] subsentence = str.split(" ");
String change = "";
for (int i = 0; i < subsentence.length; i++) {
String a = subsentence[i].substring(0, 1);
change = subsentence[i].replace(a, a.toUpperCase());
newstring += change + " ";
}
return newstring;
}
public static void main(String[] args) {
String sentence = "this is a test of java";
System.out.println(sentence);
System.out.println(formatFirst(sentence));
}
}
完整代码如下
public static void main(String[] args) {
JFrame jFrame = new JFrame();
jFrame.setSize(200, 200);
jFrame.setLocationRelativeTo(null);
jFrame.setLayout(new BorderLayout());
JTextArea jTextArea = new JTextArea();
JButton jButton = new JButton("转换大小写");
jButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
String str = JOptionPane.showInputDialog(jFrame, "请输入一个字符串");
if(str != null) {
jTextArea.setText(str.toUpperCase());
}
}
});
jFrame.add(jTextArea, BorderLayout.CENTER);
jFrame.add(jButton, BorderLayout.SOUTH);
jFrame.setVisible(true);
}
}
运行结果如下
如有帮助,请采纳,十分感谢!
楼上的方法可参考,然后将第14行代码改改就行了
转换字符串挺简单的,主要就是,gui
你这需求,5块钱可做不了
public static void main(String[] args) {
JFrame jFrame = new JFrame();
jFrame.setSize(200, 200);
jFrame.setLocationRelativeTo(null);
jFrame.setLayout(new BorderLayout());
JTextArea jTextArea = new JTextArea();
JButton jButton = new JButton("转换大小写");
jButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
String str = JOptionPane.showInputDialog(jFrame, "请输入一个字符串");
if(!StringUtils.isEmpty(str)) {
String[] arr = str.split(" ");
if(arr != null && arr.length > 0){
StringBuilder sb = new StringBuilder();
for(String s:arr){
if(!StringUtils.isEmpty(s)){
sb.append(StringUtils.capitalize(s) + " ");
}
}
str = sb.substring(0, sb.length()-1);
jTextArea.setText(str);
}
}
}
});
jFrame.add(jTextArea, BorderLayout.CENTER);
jFrame.add(jButton, BorderLayout.SOUTH);
jFrame.setVisible(true);
}