直接在Java代码里写作1111111111\\11111111111111不就行了?
或者从命令行传入参数时写作 1111111111\11111111111111,Java在内部处理时就已经记做
1111111111\\11111111111111 了
所以输出也是 1111111111\11111111111111
或者从命令行传入参数时写作 1111111111\11111111111111,Java在内部处理时就已经记做
1111111111\\11111111111111 了
所以输出也是 1111111111\11111111111111
解决方案 »
- public <T extends Shape> T add()和public Shape add()有什么区别啊!
- java如何运行c++的.exe文件在DOS窗口中
- 重发:getColumnName()怎么和getColumnLabel()一样?怎么才能得到字段名? java ResultSetMetaData
- 刚开始学习java,问个遇到的问题,希望哪位兄弟帮忙解决下,万分感谢。
- 谁帮忙指导一下!
- break改成continue
- iReport中合计怎么搞?
- 再问,时间计算出错!那位帮着看看!还有50分给
- java 可以不可以把文件路径作为参数
- OutputStream 怎么 转换成 InputStream?
- 字符串分割的怪问题.
- JComboBox不能监听KeyEvent?
^^str串内不含字符
无法实现你的要求。
我是想做一个方法,把任意字符串传进去,把里面的‘\’程序输出时出输入'\'
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
字符串内含\字符直接输出即可,无需替换,与正则表达式无关。
String str = "1111\3333";
//System.out.println(str.replaceAll("\\\\", "\\\\\\\\"));
System.out.println(str);
}输出的结果:1111?3
^^^^^^^^^^^^^^^^我想要它输出1111\3333
String str = "1111\\3333";
//System.out.println(str.replaceAll("\\\\", "\\\\\\\\"));
System.out.println(str);
}
如果你是用代码调这个方法,传入的就应该是"1111\\3333"
如果你是通过命令行或者文本输入框等外部传入的参数,直接"1111\3333"就行,java在接收到的时候就会转成"1111\\3333"
你的方法里面直接用System.out.println(str);
^^^^^^^^^^^^^^
就要用replaceAll方法替换'\'为'\\',怎么替换?
^^^^^^^^^^^^^想干什么?str=str.replaceAll("\\\\", "\\\\");
^^\ ^^\
public static void main(String[] args) {
String str="a\\a\\a\\b";
System.out.println(str.replaceAll("\\\\","\\\\\\\\"));
}
}输出:a\\a\\a\\b
public static void main(String[] args) {
System.out.println(args[0].replaceAll("\\\\","\\\\\\\\"));
}
}
用java Test 1111\3333执行
用户输入参数是1111\3333,只有一个\,输出结果不是1111\\3333吗?不是已经替换了吗?