反转java
❶ java二进制反转
public class BinaryReverse
{
private static String s = null;
public static void main(String[] args)
{
BinaryReverse br = new BinaryReverse();
Scanner sc = new Scanner(System.in);
byte tempbyte;
System.out.println("请输入要反转的数字:");
s = sc.nextLine();
tempbyte = Byte.valueOf(s);
tempbyte = br.converse(tempbyte); //开侍孙雀始反转
System.out.println("翻反转后十进制: " + tempbyte);
}
public Byte converse(Byte c)
{
String binaryString = null;
StringBuffer needAdd = new StringBuffer();
binaryString = Integer.toBinaryString(Math.abs(c));
System.out.println(binaryString);
if (s.startsWith("-"))
{
if (binaryString.length() < 8)
{
needAdd.append("1");
}
}
else
{
if (binaryString.length() < 8)
{
needAdd.append("0");
}
}
for (int i = 0; i < (7 - binaryString.length()); i++)
{
needAdd.append("0");
}
binaryString = needAdd.append(binaryString).toString();
System.out.println("原老早数二进制为: "凯猜 + binaryString);
String reverseString = needAdd.reverse().toString();
System.out.println("反转后二进制为: " + reverseString);
if (s.startsWith("-"))
{
int i = 0;
for (int j =reverseString.length(),y = 0 ; j > 1 ; j--,y++)
{
i = (int) (i + Integer.valueOf(reverseString.charAt(j-1)+"")*Math.pow(2,y));
}
if (reverseString.charAt(0) == '1')
{
i = -i;
}
return (byte)i;
}
return Byte.valueOf(reverseString,2);
}
}
不要忘了加分哦
❷ java 反转数组
import java.util.*;
public class TurnChessboard
{
static void printArray(int[][] s)
{
for(int[] i:s)
{
for(int j:i)
System.out.printf("%2d",j);
System.out.println("");
}
}
static int turn(int i)
{
if(i==0)
return 1;
else
return 0;
}
public static void main(String[] args)
{
Scanner in=new Scanner(System.in);
int m,n;
System.out.println("请输入行数和列数(必须是奇数):");
m=in.nextInt();
n=in.nextInt();
while(m%2==0||n%2==0)
{
System.out.println("非法的输入!请重试:");
m=in.nextInt();
n=in.nextInt();
}
int[][] cbd=new int[m][n];
int[] role=new int[m];
int[] cole=new int[n];
int count=0,tempcount=0;
int i,j;
System.out.printf("请输入一个%d*%d棋盘:\n",m,n);
for(i=0;i<m;i++)
for(j=0;j<n;j++)
cbd[i][j]=in.nextInt();
if(m<=n)
{
for(i=0;i<m;i++)
for(j=0;j<n;j++)
role[i]+=cbd[i][j];
for(i=0;i<m;i++)
if(role[i]%2==1)
{
for(j=0;j<n;j++)
cbd[i][j]=turn(cbd[i][j]);
count++;
System.out.printf("第%d次翻转后的棋盘(变换第%d行):\n",count,i+1);
printArray(cbd);
}
for(j=0;j<n;j++)
for(i=0;i<m;i++)
cole[j]+=cbd[i][j];
for(int t1:cole)
if(t1%2==1)
tempcount++;
if(tempcount%2==0)
{
for(j=0;j<n;j++)
if(cole[j]%2==1)
{
for(i=0;i<m;i++)
cbd[i][j]=turn(cbd[i][j]);
count++;
System.out.printf("第%d次翻转后的棋盘(变换第%d列):\n",count,j+1);
printArray(cbd);
}
System.out.printf("\n需要进行%d次翻转\n",count);
}
else
System.out.printf("\n不能通过有限的反转使行或列的1的个数为偶数!\n");
}
else
{
for(j=0;j<n;j++)
for(i=0;i<m;i++)
cole[j]+=cbd[i][j];
for(j=0;j<n;j++)
if(cole[j]%2==1)
{
for(i=0;i<m;i++)
cbd[i][j]=turn(cbd[i][j]);
count++;
System.out.printf("第%d次翻转后的棋盘(变换第%d列):\n",count,j+1);
printArray(cbd);
}
for(i=0;i<m;i++)
for(j=0;j<n;j++)
role[i]+=cbd[i][j];
for(int t2:role)
if(t2%2==1)
tempcount++;
if(tempcount%2==0)
{
for(i=0;i<m;i++)
if(role[i]%2==1)
{
for(j=0;j<n;j++)
cbd[i][j]=turn(cbd[i][j]);
count++;
System.out.printf("第%d次翻转后的棋盘(变换第%d行):\n",count,i+1);
printArray(cbd);
}
System.out.printf("\n需要进行%d次翻转\n",count);
}
else
System.out.printf("\n不能通过有限的翻转使行或列的1的个数为偶数!\n");
}
}
}
呀,真麻烦,本来以为一会就能写出来呢
❸ Java中reverse()的用法
1、reverse函数反转string
int main() {
string N;
cin>>N;
reverse(N.begin(), N.end());
cout<<N<<endl;
}
2、reverse函数反转字符数组
int main() {
char a[101];
cin.getline(a,sizeof(a));
int m=strlen(a);
reverse(a,a+m);
puts(a);
}
(3)反转java扩展阅读
语法Reverse ( string )
参数string:要颠倒字符次序的字符串返回值String。函数执行成功时返回颠倒字符次序后的字符串,如果发生错误,那么返回空字符串("")。用法Reverse()函数将一个字符串中最后一个字符放置到另一个字符串的第一个字符激老蠢位置、倒数第二个含祥字符放置在另一个字符串的第二个字符位置,以此类明陪推。
❹ 几种常用的java 实现反转的方法
1.最简单的方法:
publicstatic扮薯Stringreverse1(Stringstr)
{
returnnewStringBuffer(str).reverse().toString();
}
2.最常用的方法:
publicstaticStringreverse3(Strings)
{
char[]array=s.toCharArray();
Stringreverse="";//注意这是空串,不是null
for(inti=array.length-厅搜者1;i>=0;i--)
reverse+=array[i];
return漏含reverse;
}
3.常用方法的变形:
publicstaticStringreverse2(Strings)
{
intlength=s.length();
Stringreverse="";//注意这是空串,不是null
for(inti=0;i<length;i++)
reverse=s.charAt(i)+reverse;//在字符串前面连接,而非常见的后面
returnreverse;
}
4.C语言中常用的方法:
publicstaticStringreverse5(Stringorig)
{
char[]s=orig.toCharArray();
intn=s.length-1;
inthalfLength=n/2;
for(inti=0;i<=halfLength;i++){
chartemp=s[i];
s[i]=s[n-i];
s[n-i]=temp;
}
returnnewString(s);//知道char数组和String相互转化
}
❺ java中的控制反转是什么意思
1、用仿肆逗白话来讲,就是由容器控制程序之间的关系,而非传统实现备卖中,由程序代码直接操控;
2、控雹棚制权由应用代码中转到了外部容器,控制权的转移,是所谓反转;
3、配置文件来描述类与类之间的关系,由容器来管理,降低了程序间的耦合度,程序的修改可以通过简单的配置文件修改来实现。
❻ java编程,编写方法 int reverse(int n),使其能把n反转,例reverse(4
int变成string,string变成chararray,chararray倒序遍历变回string
string变回int
记得判断正负。
也可以用/10的余数取数字然后再乘10加回来
例如:
public String reverseSting(String inputString) {
char[] inputStringArray = inputString.toCharArray();
String reverseString = "";
for (int i = inputStringArray.length - 1; i >= 0; i--) {
reverseString += inputStringArray[i];
}
return reverseString;
}
(6)反转java扩展阅读:
JRE是个运行环境,JDK是个开发环境。因此写Java程序的时候需要JDK,而运行Java程序的时候就需要JRE。而JDK里面已经包含了JRE,因此只要安装了JDK,就可以编辑Java程序,也可以正常运行Java程序。但由于JDK包含了许多与运行无关的内容,占用的空间较大,因此运行普通的Java程序无须安装JDK,而只需要安装JRE即可。