js代码改为java代码 js代码转python

js转java代码

package p1;

成都创新互联公司为企业级客户提高一站式互联网+设计服务,主要包括成都网站制作、网站设计、手机APP定制开发小程序定制开发、宣传片制作、LOGO设计等,帮助客户快速提升营销能力和企业形象,创新互联各部门都有经验丰富的经验,可以确保每一个作品的质量和创作周期,同时每年都有很多新员工加入,为我们带来大量新的创意。 

import java.util.Arrays;

import java.util.LinkedList;

public class Guy

{

public static void recursionSub ( LinkedListint[] list, int count, int[] array, int ind, int start, int... indexs )

{

start++;

if (start count - 1)

{

return;

}

if (start == 0)

{

indexs = new int[array.length];

}

for ( indexs = ind; indexs array.length; indexs++ )

{

recursionSub (list, count, array, indexs + 1, start, indexs);

if (start == count - 1)

{

int[] temp = new int[count];

for ( int i = count - 1; i = 0; i-- )

{

temp[start - i] = array[indexs[start - i]];

}

list.add (temp);

}

}

}

public static void main ( String[] args )

{

int[] array = { 1, 2, 3, 4, 5, 6, 7, 8, 9 };

LinkedListint[] list = new LinkedListint[] ();

recursionSub (list, 3, array, 0, -1);

for ( int[] strings : list )

{

System.out.println (Arrays.toString (strings));

}

}

}

如何将这些JS代码转换成JAVA代码

javascript 和java都不是一个道理的,不是说转换就可以的,为什么很多人喜欢跨语言转换代码,你们为什么不能这样问呢:如何用java来实现某种功能,岂不是更好?

一个js方法转换为java代码

package p1;

import java.util.Arrays;

import java.util.LinkedList;

public class Guy

{

public static void recursionSub ( LinkedListint[] list, int count, int[] array, int ind, int start, int... indexs )

{

start++;

if (start count - 1)

{

return;

}

if (start == 0)

{

indexs = new int[array.length];

}

for ( indexs = ind; indexs array.length; indexs++ )

{

recursionSub (list, count, array, indexs + 1, start, indexs);

if (start == count - 1)

{

int[] temp = new int[count];

for ( int i = count - 1; i = 0; i-- )

{

temp[start - i] = array[indexs[start - i]];

}

list.add (temp);

}

}

}

public static void main ( String[] args )

{

int[] array = { 1, 2, 3, 4, 5, 6, 7, 8, 9 };

LinkedListint[] list = new LinkedListint[] ();

recursionSub (list, 3, array, 0, -1);

for ( int[] strings : list )

{

System.out.println (Arrays.toString (strings));

}

}

}

js代码转换为java

理解他的原理就好写了。

所有参数 排除 时间戳,按照字母顺序排序,然后连接起来 和 appKey 以及 appSercet 进行md5 运算。

排序可以使用 String []keys = map.keyset().toarray() 获取后使用 Collections 进行sort。

有个类似的,可以参考一下:

public static boolean signVerify(String appSecret,MapString, String params){

MapString, String map=new HashMapString, String();

map.put("appSecret", appSecret);

for(String key:params.keySet()){

if(!key.equals("sign")){

map.put(key, params.get(key));

}

}

String sign=sign(map);

if(sign.equals(params.get("sign"))){

return true;

}

return false;

}

private static String toHexValue(byte[] messageDigest) {

if (messageDigest == null)

return "";

StringBuilder hexValue = new StringBuilder();

for (byte aMessageDigest : messageDigest) {

int val = 0xFF  aMessageDigest;

if (val  16) {

hexValue.append("0");

}

hexValue.append(Integer.toHexString(val));

}

return hexValue.toString();

}

/**

 * 

 * @param params

 * @return

 */

public static String sign(MapString,String params){

ListString keys=new ArrayListString(params.keySet());

Collections.sort(keys);

String string="";

for(String s:keys){

string+=params.get(s);

}

String sign="";

try {

sign = toHexValue(encryptMD5(string.getBytes(Charset.forName("utf-8"))));

} catch (Exception e) {

e.printStackTrace();

throw new RuntimeException("md5 error");

}

return sign;

}

private static byte[] encryptMD5(byte[] data)throws Exception{

MessageDigest md5 = MessageDigest.getInstance("MD5");

md5.update(data);

return md5.digest();

}

public static void main(String[] args) {

String appKey="key";

String appSecret="secret";

MapString, String params=new HashMapString, String();

params.put("appKey", appKey);

params.put("appSecret", appSecret);

params.put("date", new Date().getTime()+"");

String sign=sign(params);

params.put("sign", sign);

System.out.println(signVerify(appSecret, params));

}

本文名称:js代码改为java代码 js代码转python
网站路径:https://www.cdcxhl.com/article0/dddgcio.html

成都网站建设公司_创新互联,为您提供域名注册自适应网站关键词优化网站策划网站内链

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

h5响应式网站建设