java字符串换位代码 java字符串位置替换

java字符串怎么转换为代码方法是有的,但不全实际.
首先,你要理解,JAVA代码的运行是要被编译成字节码codebyte后才能被执行的,以你问题中的意思,那个字符串应该是在怎么代码被编译后项目在运行时,再传入的参数,这时,要想把传入参数的字符串当成JAVA代码来运行,只有一种办法,就是把传进来的字符串转换成字节码,并且,要虚拟加一个方法体出来.这也不是不可行,可用的技术有asm.cglib等字节码技术.但你想,对于你的问题.这样有实际的意义吗
你还不如,把system.out.print重定义成新的外调方法调动来的清晰
java简单小程序 字符串换位那就去用栈的特性,自己写一个栈类 。
package reverse;
import java.util.Scanner;
import stack.StackX;;
public class ReverseApp {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
while(true){
System.out.print("Enter a String:");
String value = https://www.04ip.com/post/in.nextLine();
if(value.equals("")){
System.out.println("Program is Exit");
break;
}
Reverse rev = new Reverse(value);
System.out.println("Reversed:" rev.doRev());
}
}
}
class Reverse {
private String input;
private String output;
public Reverse(String in){
input = in;
}
public String doRev(){
int stackSize = input.length();
StackX stack = new StackX(stackSize);
for(int i = 0;iinput.length();i){
char ch = input.charAt(i);
stack.push(ch);
}
output = "";
while(!stack.isEmpty()){
output= (char)stack.pop();
}
return output;
}
}
【java字符串换位代码 java字符串位置替换】package stack;
public class StackX {
private int maxSize;
private int[] stackArray;
private int top;
public StackX(int s) {
maxSize = s;
stackArray = new int[maxSize];
top = -1;
}
public void push(int value) {
stackArray[top] = value;
}
public int pop() {
return stackArray[top--];
}
public int peek() {
return stackArray[top];
}
public boolean isEmpty() {
return (top == -1);
}
public boolean isFull() {
return top == (maxSize - 1);
}
}
不好意思,弄得太复杂了 。。。
其实就这样算了 。。。
import java.util.Scanner;
public class TestStack {
public static void main(String[] args) {
Scanner in = newScanner(System.in);
String str = in.next();
System.out.println(str);
for(int i = str.length()-1;i=0;i--){
char c = str.charAt(i);
System.out.print(c);
}
}
}
java 字符串颠倒和换位import java.text.CharacterIterator;
import java.text.StringCharacterIterator;
import java.util.Arrays;
/**
* 一开始的数字是12345678 , 全部加上1以后是23456789,然后第一位和最后一位颠倒,
* 变成93456782,然后在把这组数字顺序颠倒,变成28765439~ 就是这意思
*
* @author Gao
* @version 2009-7-29
*
*/
public class Test
{
public static void main(String[] args)
{
String a = "12345678";
String b = "";
// 使用了java.text.CharacterIteraoter类来迭代字符串
CharacterIterator ci = new StringCharacterIterator(a);
int[] nums = new int[a.length()];// 创建一个数组,他的长度等于字符串的长度
int i = 0;
for (char ch = ci.first(); ch != CharacterIterator.DONE; ch = ci.next())
{
// 判断当前字符是否为数字
if (Character.isDigit(ch))
{
int n = Integer.parseInt(String.valueOf(ch));
nums[i] = n1;
}
}
swap(nums);// 交换头和尾
reverse(nums);// 颠倒数组内所有元素
System.out.println(Arrays.toString(nums));
}
/**
* 交换头和尾两个值
*
* @param nums
*/
private static void swap(int[] nums)
{
// 判断数组是否足够大,如果元素小于1则没有交换的可能
if (nums.length1)
{
int len = nums.length - 1;
int tmp = nums[0];
nums[0] = nums[len];
nums[len] = tmp;
}
}
/**
* 颠倒数组内所有元素
*
* @param nums
*/
private static void reverse(int[] nums)
{
// 这里可能数据量大的话会有性能问题, 一时没想到好的算法~.~
for (int i = 0; inums.length; i)
{
for (int j = i; jnums.length; j)
{
int tmp = nums[i];
nums[i] = nums[j];
nums[j] = tmp;
}
}
}
}
因为你也是新学的,所以没有使用太多集合类 , 还是原始一点儿好,集合类也不过就是把这些过程进行了封装而已 , 而且总是用集合类也无助于基础只是的学习
java中怎么进行字符串替换?使用replace方法
该方法的作用是替换字符串中所有指定的字符java字符串换位代码,然后生成一个新的字符串java字符串换位代码 , 例如:
String s = “abcat”java字符串换位代码;
String s1 = s.replace(‘a’java字符串换位代码,‘1’);
该代码的作用是将字符串s中所有的字符a替换成字符1,生成的新字符串s1的值是“1bc1t”,而字符串s的内容不发生改变 。如果需要将字符串中某个指定的字符串替换为其它字符串,则可以使用replaceAll方法 , 例如:
String s = “abatbac”;
String s1 = s.replaceAll(“ba”,“12”);
该代码的作用是将字符串s中所有的字符串“ab”替换为“12” , 生成新的字符串“a12t12c”,而字符串s的内容也不发生改变 。
字符串在存储上类似字符数组
它每一位单个元素都是能提取的,字符串的零位是它的长度 , 如s[0]=10,这提供给我们很多方便,例如高精度运算时每一位都能转化为数字存入数组 。
通常以串的整体作为操作对象,如:在串中查找某个子串、求取一个子串、在串的某个位置上插入一个子串以及删除一个子串等 。两个字符串相等的充要条件是:
长度相等,并且各个对应位置上的字符都相等 。设p、q是两个串,求q在p中首次出现的位置的运算叫做模式匹配 。串的两种最基本的存储方式是顺序存储方式和链接存储方式 。
关于java字符串换位代码和java字符串位置替换的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站 。

    推荐阅读